Изменение исполнения плагина Maven. Свойства Maven или пропуск шагов жизненного цикла сборки.
Когда я создаю приложение с помощью Maven, я запускаю mvn clean install
, В рамках жизненного цикла установки я запускаю appengine:devserver_start
из плагина Google GAE Maven. Похоже, что это уже связано с шагом в жизненном цикле, и поэтому он перезапускает некоторые шаги сборки с самого начала, даже если я выполняю mvn install
сделал это. Например, шаг ресурсов повторяется. У меня был свой собственный скрипт Java, чтобы загрузить последние ресурсы для моей сборки. Но из-за appengine:devserver_stop
Мне нужно снова запустить этот шифр без необходимости, потому что шаг ресурсов выполняется повторно.
Я могу думать о двух способах избежать этого, но я не уверен, как настроить оба способа. Первым было бы как-то пропустить повторные шаги сборки, которые я уже выполнил. Другой способ - изменить свойства Maven POM только для выполнения плагина. У меня есть набор свойств Maven, либо true
или же false
, что я могу использовать, чтобы установить skip
настройки для Java-скрипта, который я использую во время ресурсов (потому что я запускаю этот скрипт с помощью exec-maven-plugin). Думайте об этом как о свойстве Maven, которое можно установить с помощью флага -D. Могу ли я изменить это свойство только для плагина?
Если у вас возникли проблемы с размышлениями о моем сценарии, подумайте, что происходит, когда вы запускаете mvn compile install
, Все этапы жизненного цикла сборки до compile
будет работать, затем все шаги компиляции, пока install
будет работать, в том числе compile
,
2 ответа
Распространенным / простым способом решения такого рода проблем является использование профиля maven. Просто создайте новый профиль, который включает плагин с предпочтительными фазами.
Вы, вероятно, не должны бороться с этим и просто бежать clean appengine:devserver_start
вместо clean install
, Прочитайте мой ответ здесь для более подробного объяснения: /questions/2483986/zhiznennyij-tsikl-sborki-maven-dlya-appengine-obnovlenie/2483992#2483992