Я хотел бы к разрыву определенные фазы в жизненном цикле знатока в sub фазы. Я хотел бы управлять выполнением, вытекают из одной подфазы другому, виду подобных с зависимостями от муравья.
Например, я хотел бы использовать плагин NSIS для упаковки моего проекта в установщик на этапе пакета, ПОСЛЕ ТОГО, КАК мой проект был упакован в военный файл. Я хотел бы сделать все это в фазе пакета.
Это возможно?
Спасибо
Плагины, привязанные к одной и той же фазе , должны выполняться в том же порядке, в каком они перечислены в POM. При определенных обстоятельствах (например, если вы дважды привязываете один и тот же плагин к фазе, например, плагин antrun), этого может не произойти, но это ошибка (см. MNG-2258 и связанную проблему MNG -3719 ).
У меня был та же проблема. посмотрите Как выполнять упорядоченные задачи в сборке Maven2 . по какой-то причине различные цели, привязанные к фазе, сохраняются в хэш-карте или другой неупорядоченной структуре, что делает порядок выполнения случайным. {1}} Мое решение состояло в том, чтобы распределить задачи по разным этапам, но я не думаю, что это имеет смысл в вашем случае (упаковка nsis не является предварительным тестом интеграции). вы можете выполнить одно из следующих действий:
1) Испытайте удачу и посмотрите, выберет ли Maven правильный порядок для вас (вы, вероятно, уже пробовали это сделать)
2) Используйте автономный плагин - запустите цель вне жизненного цикла. что-то вроде: mvn package org.codehaus.mojo: nsis-maven-plugin: 1.0: compile.
3) разделите их на модуль: имейте родительский pom, содержащий два подмодуля, один - ваш военный проект, а другой - для проекта nsis.
4) используйте собственный жизненный цикл, изменив тип, в вашем случае вы можете использовать exe. это делается с помощью специального расширения плагина ( руководство по использованию расширения )
5) используйте jetspeed-mvn-maven-plugin . Я никогда им не пользовался, но, кажется, он подходит для ваших нужд.
надеюсь, что это даст вам новые идеи.
Ронен