Apache Maven
Nexus, Plugins
What you will learn
Apache Maven
Why take this course?
Курс Apache Maven содержит информацию про инструмент автоматизированной сборки проектов, который полностью отвечает за жизненный цикл Java приложений. Зайдем в исходный код Apache Maven, чтобы понять основное ядро его, которым на самом деле являются плагины и Mojo (Maven plain Old Java Object). Поэтому на практике разберем основные плагины, которые чаще всего используются в реальных проектах:
- Surefire для запуска unit тестов
- Failsafe для запуска integration тестов
- Jacoco для генерации документации о пройденных тестах и их покрытия исходного кода
- Release для создания релизных версий проектов и пуша их в удаленный репозиторий (github)
- Assembly для упаковки вашего приложения в архивы (jar)
- Dependency для скачивания всех зависимостей (и транзитивных тоже) в отдельные директории (так поступают многие другие Java приложения, такие как Apache Tomcat, Apache Maven, Gradle и др.)
Более того, мы сами попробуем написать свой собственный плагин и задеплоим его в репозиторий, чтобы предоставить доступ к нему из других приложений.
Узнаем в какие типы артефактов можно собирать наши проекты и конечно же более подробно остановимся на war (для упаковки веб архивов) и jar. А также узнаем, как собирать jar таким образом, чтобы можно было запустить наше приложение через командную строку, причем разберем несколько общепринятых вариантов.
Разберем многомодульные проекты, углубимся в возможности наследования конфигурационных файлов POM и многое другое.
По окончании курса вы уверенно будете владеть Apache Maven и хорошо разбираться во всех его аспектах.