Сразу хочу отметить, если вы используете intellijIdea, то в этой среде уже присутствуют все необходимое из жизненных циклов. Что то изучать дополнительно нет необходимости. Сразу начну с главного.Команды жизненного цикла это то что вы хотите получить от работы Maven.Вот пример цикла из среды разработки intellijIdea:
Кратко опишем каждую из команд LifeCycle:
compile Компиляция проекта. Для тех кто не знает:компиляция_это перевод программы,написанной на более высоком языке в машинный код,который понятен процессору. Процессор понимает машинный код
test Тестирование с помощью JUnit тестов.Это отладка вашего кода тестами, которые вы же и придумываете для своей программы используя библиотеку JUnit. Достаточно сомнительно занятие.
package Создание .jar файла или war, ear в зависимости от типа проекта.Создается конечный файл вашей программы. Помещается в папку Target.
install Копирование .jar (war , ear) в локальный репозиторий
deploy публикация файла в удалённый репозиторий
Особняком стоят команды:
clean очистка проекта от лишних файлов .class, .jar и других файлов. В простом случае удалит весь каталог target
site создаст документацию проекта javadoc. И собирает сайт.Что это за хрень, я еще не разобрался.
Таким образом, при работе в IntellijIdea, достаточно выбрать нужную вам команду, нажать на нее и получить необходимый результат.
Опишу жизненный цикл более подробно и занудно
В Maven есть описание фаз и целей. Когда Maven нужно что-то сделать , например, почистить проект, собрать проект, запустить тесты, то Maven делает кучу вещей, которые описаны в так называемом goals-цель. Цели собирают в фазы-Phase. Фаза-это действие. Т.е. действие преследует какую то цель. Например действие сборка имеет цель получить готовый jar файл. Все действия фазы собраны в жизненный цикл. Вот в этом цикле можно выбрать нужное нам действие и запустить его.Витиевато устроено.Я бы сказал пафосно.
При выполнении команды на сборку проекта (package) выполняются следующие действия:
Phase plugin:goal
process-resources resources:resources
compile compiler:compile
process-test-resources resources:testResources
test-compile compiler:testCompile
test surefire:test
package jar:jar
install install:install
deploy deploy:deploy
Стало понятней? А как облегчилась работа, не правда ли?
В общем в каждой фазе куча целей. Цели можно запуска отдельно, можно их переопределять к другим фазам, можно отключать в фазе цели и т д.
Пресловутый site имеет четыре фазы-goals:
- pre-site -подготовка сайта
- site -формирование сайта
- post-site — подготовка к публикации сайта
- deploy- публикация сайта
Если необходимо изучить цели плагинов, то необходимо обратиться к документации на эти плагины на сайте разработчиков.