Поиск по сайту:

Жизненный цикл сборки Maven, этапы и цели


Что такое жизненный цикл сборки Maven?

Когда мы создаем проект Maven, он выполняет набор четко определенных задач на основе конфигурации проекта pom.xml и параметров командной строки. Этот стандартный набор задач создает жизненный цикл сборки maven. Преимущество четко определенного образа жизни заключается в том, что нам нужно помнить лишь несколько наборов команд для компиляции, сборки, установки и развертывания наших проектов. Рекомендуемая литература: более 20 команд и параметров Maven (шпаргалка)

Встроенные жизненные циклы сборки

Существует три встроенных жизненных цикла сборки.

  1. по умолчанию: обрабатывает сборку и развертывание проекта
  2. clean: выполняет очистку проекта
  3. сайт: занимается созданием документации сайта проекта.

Этапы сборки Maven

Жизненный цикл сборки Maven проходит через ряд этапов, которые называются фазами сборки. Например, жизненный цикл по умолчанию состоит из следующих фаз.

  • подтвердить
  • скомпилировать
  • проверить
  • пакет
  • подтвердить
  • установить
  • развернуть

Этапы сборки выполняются последовательно. Когда мы запускаем команду сборки maven, мы указываем фазу, которую нужно выполнить. Любые этапы сборки maven, предшествующие указанному этапу, также выполняются. Например, если мы запустим mvn package, он выполнит этапы проверки, компиляции, тестирования и упаковки проекта.

Цели сборки Maven

Этап сборки состоит из набора целей. Цели Maven представляют собой конкретную задачу, которая способствует созданию проекта и управлению им. Иногда цель maven не привязана к фазе сборки. Мы можем выполнить эти цели через командную строку. Синтаксис для выполнения цели:

$ mvn plugin-prefix:goal

$ mvn plugin-group-id:plugin-artifact-id[:plugin-version]:goal

Вот пример выполнения цели дерева зависимостей из командной строки. Он не является частью каких-либо этапов сборки.

mvn dependency:tree

Роль POM в жизненном цикле сборки

Сборки maven, выполняемые через командную строку, выполняют ряд этапов и целей. Конфигурация pom.xml играет важную роль в настройке жизненного цикла сборки проекта. Значение packaging в файле pom.xml определяет набор целей, которые должны быть выполнены сборкой maven. Например, если это jar, будут выполнены следующие этапы и цели.

Phase 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

Мы также можем настроить цели в файле pom.xml, используя элемент plugins. Это в основном требуется, когда вы создали собственный плагин и хотите выполнить какую-либо конкретную цель на этапе сборки.

Рекомендации

  • Документация Apache.org