1. Что такое архетип Maven?
Архетип maven – это простой артефакт, который содержит файлы и конфигурацию, связанные с вашим проектом. Основное преимущество использования архетипов заключается в стандартизации разработки проектов и позволяет разработчикам легко следовать лучшим практикам, ускоряя загрузку своих проектов.
2. Почему нам нужен пользовательский архетип?
Это Просто Когда мы разрабатываем приложение, которое появляется на основе некоторых других проектов, и нам требуются некоторые файлы для получения информации и доступа к их функциональности.
Так много конфигурационных файлов может содержаться в вашем зависимом проекте, например web.xml , pom.xml и т.д..,
Файлы pom состоят из всех зависимостей, которые вам требуются от других проектов.
Здесь ваш шаблон проекта исправлен, и вы знаете, какие файлы вам нужны и где вам нужно разместить эти файлы. Сначала вы создали его самостоятельно, но позже это повторная работа когда вы разрабатываете новый проект с тем же шаблоном проекта . Таким образом, пользовательский архетип maven поможет вам создать полностью автоматизированный, настраиваемый шаблон проекта.
3. Что состоит внутри Архетипов?
Архетип состоит из одного основного конфигурационного файла, называемого archetype-metadata.xml и его можно найти в src/main/resources/META-INF/maven/ и есть папка с именем src/main/resources/archetype-resources/ он содержит все файлы, связанные с вашим проектом, в которых вам необходимо выполнить настройку.
Даже архетип создается проектом, поэтому у нас также есть корень pom.xml в базовом местоположении проекта archetype.
Дескриптор архетипа Maven
1.0 src/main/java **/*.java src/main/resources **/*.xml **/*.properties
обязательные свойства тег используется для поддержания любых настраиваемых параметров , которые вам нужны в вашем проекте. Если оно задано как значение по умолчанию, оно будет использоваться, в противном случае оно будет предложено при создании проекта.
Наборы файлов будут использоваться для обслуживания папок. Отфильтрованный файл означает, что заполнители будут заменены предоставленными значениями в процессе генерации. Итак, в нашем проекте client-name является обязательным свойством и я могу использовать это свойство в любом файле каталога filtered fileset.
тег modules поможет вам создать многомодульный шаблон проекта.
для получения дополнительной информации, пожалуйста, ознакомьтесь с Apache docs
4. Сделайте его доступным
После настройки пользовательского архетипа вам необходимо сделать это доступным для других сотрудников. Итак, для этого у нас есть тег distributionManagement в корне pom.xml файл, в котором вы можете поддерживать свой репозиторий для развертывания сгенерированного архетипа, и, наконец, он также будет доступен другим пользователям.
для получения подробной информации о том, как создать конфигурацию для Nexus, пожалуйста, посетите сайт Управление дистрибутивом в Maven
5. Быстрый способ создания архетипа
Как я уже говорил ранее, в первый раз вы создали его самостоятельно, используя общий метод создания проекта с использованием maven. У вас есть готовый шаблон вашего проекта таким образом, это очень просто, и вам нужно использовать только одну команду, и это встроенный плагин maven архетип mvn: создать из проекта .
Перейдите в корневую папку шаблона вашего проекта и выполните приведенную выше команду maven автоматически создаст пользовательский архетип, и он будет доступен в целевом расположении базового шаблона проекта.
Вот и все для поста, скоро я вернусь с другим полезным постом. Я хотел бы услышать ваши отзывы и предложения.
Вы можете следовать за мной по Твиттер
Оригинал: “https://dev.to/iamjaveed59/a-maven-custom-archetype-p3c”