«1. Введение
Apache Maven — один из самых популярных инструментов сборки для проектов Java. Помимо простой децентрализации зависимостей и репозиториев, продвижение единой структуры каталогов в проектах также является одним из его важных аспектов.
В этой быстрой статье мы рассмотрим стандартный макет каталога типичного проекта Maven.
2. Макет каталога
Типичный проект Maven имеет файл pom.xml и структуру каталогов, основанную на определенных соглашениях:
└───maven-project
├───pom.xml
├───README.txt
├───NOTICE.txt
├───LICENSE.txt
└───src
├───main
│ ├───java
│ ├───resources
│ ├───filters
│ └───webapp
├───test
│ ├───java
│ ├───resources
│ └───filters
├───it
├───site
└───assembly
Макет каталога по умолчанию можно переопределить с помощью дескрипторов проекта, но это необычно и обескураженный.
В этой статье мы расскажем больше о каждом стандартном файле и подкаталоге.
3. Корневой каталог
Этот каталог служит корнем каждого проекта Maven.
Давайте подробнее рассмотрим стандартные файлы и подкаталоги, которые обычно находятся в корневом каталоге:
-
maven-project/pom.xml — определяет зависимости и модули, необходимые в течение жизненного цикла сборки проекта Maven maven-project /LICENSE.txt — лицензионная информация проекта maven-project/README.txt — сводка проекта maven-project/NOTICE.txt — информация о сторонних библиотеках, используемых в проекте maven-project/ src/main — содержит исходный код и ресурсы, которые становятся частью артефакта maven-project/src/test — содержит весь тестовый код и ресурсы maven-project/src/it — обычно зарезервирован для используемых интеграционных тестов с помощью подключаемого модуля Maven Failsafe maven-project/src/site — документация сайта, созданная с помощью подключаемого модуля Maven Site Plugin maven-project/src/assembly — конфигурация сборки для упаковки двоичных файлов
4. Каталог src/main ~~ ~ Как видно из названия, src/main — самый важный каталог проекта Maven. Здесь должно присутствовать все, что должно быть частью артефакта, будь то кувшин или война.
Его подкаталоги:
src/main/java — исходный код Java для артефакта src/main/resources — файлы конфигурации и другие файлы, такие как файлы i18n, файлы конфигурации для каждой среды и конфигурации XML. src/main/webapp — для веб-приложений, содержит ресурсы, такие как файлы JavaScript, CSS, HTML, шаблоны представлений и изображения. src/main/filters — содержит файлы, которые вводят значения в свойства конфигурации в папке ресурсов во время сборки. фаза
-
5. Каталог src/test
Каталог src/test — это место, где находятся тесты каждого компонента приложения.
Обратите внимание, что ни один из этих каталогов или файлов не станет частью артефакта. Давайте посмотрим на его подкаталоги:
src/test/java — исходный код Java для тестов src/test/resources — файлы конфигурации и другие файлы, используемые тестами src/test/filters — содержит файлы, которые вводят значения в свойства конфигурации в папке ресурсов на этапе тестирования
-
6. Заключение
В этой статье мы рассмотрели стандартный макет каталога для проекта Apache Maven.
Несколько примеров структур проекта Maven можно найти в проекте GitHub.
«