Я новичок в Maven, исходя из мира Ant.
Можно ли перечислить все возможные цели (включая, скажем, все плагины), которые вы можете запустить?
Я вижу, что в Maven 1 использовался флаг -g
, но это не доступно в версии 2.
Я новичок в Maven, исходя из мира Ant.
Можно ли перечислить все возможные цели (включая, скажем, все плагины), которые вы можете запустить?
Я вижу, что в Maven 1 использовался флаг -g
, но это не доступно в версии 2.
Цель, указанная в командной строке, связана с lifecycle Maven. Например, жизненный цикл build
(у вас также есть жизненные циклы clean
и site
, которые являются разными) состоит из следующих фаз:
validate
: проверить правильность проекта и получить всю необходимую информацию.compile
: скомпилировать исходный код проекта.test
: проверить скомпилированный исходный код с помощью подходящей модульной системы тестирования. Эти тесты не требуют, чтобы код был упакован или развернут.package
: возьмите скомпилированный код и упакуйте его в свой распространяемый формат, например JAR.integration-test
: обрабатывать и развертывать пакет, если необходимо, в среду, в которой могут выполняться тесты интеграции.verify
: выполните все проверки, чтобы убедиться, что пакет действителен и соответствует критериям качества.install
: установите пакет в локальный репозиторий, для использования в качестве зависимости в других проектах локально.deploy
: выполняется в среде интеграции или выпуска, копирует окончательный пакет в удаленный репозиторий для совместного использования с другими разработчиками и проектами.Вы можете найти список "основных" плагинов здесь, но есть много других плагинов, таких как codehaus, здесь.
Можно ли перечислить все возможные цели (включая, скажем, все плагины), которые можно запустить?
У Maven нет ничего встроенного для этого, хотя список phase конечен ( список целей плагина не происходит, поскольку список плагинов не является).
Но вы можете упростить и использовать силу bash завершение (используя cygwin, если вы находитесь под Windows), как описано в Руководство по завершению автозапуска Maven 2.x с использованием BASH (но прежде чем выбрать script из этого руководства, прочтите далее).
Чтобы все получилось, сначала выполните это руководство, чтобы установить завершение bash на вашем компьютере. Затем пришло время получить script для Maven2 и:
maven
в Ubuntu), что вы можете download от HEAD. Это просто лучший.Ниже приводится то, что я получаю, чтобы проиллюстрировать результат:
$ mvn [tab][tab] Display all 377 possibilities? (y or n) ant:ant ant:clean ant:help antrun:help antrun:run archetype:crawl archetype:create archetype:create-from-project archetype:generate archetype:help assembly:assembly assembly:directory assembly:directory-single assembly:help assembly:single ...
Конечно, я никогда не просматриваю возможности 377, я использую завершение. Но это дает вам представление о размере списка "a":)
Если вы используете IntelliJ IDEA, вы можете просмотреть все цели/задачи maven (включая плагины) на вкладке Maven Projects
:
Позволяет сделать это очень просто:
Maven Lifecycles: 1. Очистить 2. Default (build) 3. Сайт
Фазы Maven жизненного цикла по умолчанию: 1. Подтвердить 2. Скомпилировать 3. Тест 4. Пакет 5. Проверить 6. Установите 7. Развертывание
Примечание: Не смешивайте и не смешивайте с целями maven с жизненным циклом maven.
См. Основы жизненного цикла сборки Maven 1
Жизненный цикл сборки составлен из фаз
Каждый из этих жизненных циклов сборки определяется другим списком фаз сборки, где фаза сборки представляет собой этап в жизненном цикле.
Например, жизненный цикл по умолчанию включает следующие этапы (полный список фаз жизненного цикла см. в справочнике жизненного цикла):
Эти фазы жизненного цикла (плюс другие фазы жизненного цикла, не показанные здесь) выполняются последовательно для завершения жизненного цикла по умолчанию. Учитывая приведенные выше этапы жизненного цикла, это означает, что при использовании жизненного цикла по умолчанию Maven сначала проверит проект, затем попытается скомпилировать источники, запустить их против тестов, упаковать двоичные файлы (например, jar), запустить интеграционные тесты против этого пакет, проверьте интеграционные тесты, установите проверенный пакет в локальный репозиторий, затем разверните установленный пакет в удаленный репозиторий.
Источник: https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html