Maven: Lifecycle, Phase, Goal

Для того, чтобы не запутаться в работе maven’а нужно разобраться с базовыми понятиями.

1. Жизненный цикл (lifecycle) :  default, clean, site.

2. Фазы (phase). Жизненный цикл состоит из чередования различных фаз. Например жизненный цикл clean состоит из фаз : pre-clean, clean и post-clean. Порядок выполнения важен. Если мы запустим mvn package , то также будут выполняться все предыдущие фазы: validate,compile, test и т.д.

3. Цели, задачи, голы (goal).  Фазы состоят из чередования голов, например: gwt:run, assembly:assembly, compiler:compile (т.е. голы они с двоеточием).  Для того, чтобы указать какие голы должны быть забиты в какой фазе нужно в pom.xml  отредактировать секцию plugin.  Так сделано потому, что голы создаются плагинами.

Вот такая матрёшка.

Жизненный цикл состоит из фаз, а фазы состоят из голов.

То есть, когда выполняется mvn clean gwt:run, мы проходим жизненный цикл clean, а затем забиваем гол gwt:run


Об авторе
Более 20 лет в разработке ПО, специализируюсь на Java. Опыт в создании масштабируемых и высокопроизводительных систем, разработке мобильных приложений. Подробнее об авторе и правилах использования контента – на странице @author.