Почему мой Maven Mojo может потерять свои свойства конфигурации при запуске по отдельности? - PullRequest
1 голос
/ 03 июля 2011

У меня есть нерешенная проблема в jasmine-maven-plugin , и я не могу понять это.

Вы можете попробовать этоВы сами, но суть в том, что при запуске:

mvn jasmine:test

Свойства, настроенные в pom.xml для плагина, не устанавливаются для bean-компонента Mojo.

При проверке это довольноПонятно, что каждое свойство в компоненте возвращается к своему значению по умолчанию.Тем не менее, когда вы запускаете саму фазу тестирования (с которой связан jasmine: test), например:

mvn test

Он работает нормально.

Есть идеи?Преамбула в верхней части TestMojo выглядит следующим образом:

/**
 * @component
 * @goal test
 * @phase test
 * @execute lifecycle="jasmine-lifecycle" phase="process-test-resources"
 */

Обновление : теперь я еще больше запутался.После дальнейшего чтения кажется, что это поведение действительно неожиданно, так как конфигурация, которую я вижу как пропущенную, выполняется в элементе <configuration> прямо под плагином, а не в <execution/>, для этого документа :

Примечание. Конфигурации внутри тега отличаются от тех, которые находятся снаружи, в том, что их нельзя использовать из прямого вызова командной строки.Вместо этого они применяются только тогда, когда вызывается фаза жизненного цикла, к которой они привязаны.Кроме того, если вы переместите раздел конфигурации за пределы раздела «Выполнения», он будет применяться глобально ко всем вызовам плагина.

1 Ответ

5 голосов
/ 03 июля 2011

И, конечно же, я идиот.Я искал неправильное POM, и, разумеется, конфигурация находилась внутри блока <execution>.

Поэтому я постараюсь накормить Google, ответив на свой вопрос большими жирными буквами:

Когда вы вызываете цель Maven из командной строки, она подхватит элемент конфигурации вашего pom.xml только в том случае, если эта конфигурация была сделана непосредственно под элементом <plugin/>, а не под любым элементом <execution/>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...