Выполнение плагина не охватывается конфигурацией жизненного цикла, если вы пытаетесь использовать ActiveJdbc под Eclipse
Я ввел необходимый конфиг в мой pom.xml
развиваться с ActiveJdbc
, который включает в себя одну зависимость и один плагин.
Зависимость прошла нормально, в то время как плагин вызвал сообщение об ошибке от Eclipse:
Plugin execution not covered by lifecycle configuration
Я новичок в плагинах, и не понимаю ни сообщения об ошибке, ни предоставленных быстрых исправлений.
Что они имеют в виду?
ОБНОВИТЬ
Если я заверну <plugins>
раздел в <pluginManagement>
тег, ошибка исчезает. Но в то же время контрольно-измерительные приборы больше не работают.
Можно ли как удалить сообщение об ошибке, так и оставить инструментарий в Eclipse?
3 ответа
Это ошибка, возникающая в новом плагине M2E (начиная с версии 1.0), когда он встречает плагин, не имеющий информации о сопоставлении жизненного цикла, который явно указывает M2E, как обрабатывать исполнения плагина. Лично у меня нет проблем с тем, чтобы придерживаться старого m2eclipse (версия 0.12) большую часть времени, пока он все прекрасно строит.
Тем не менее, чтобы устранить эту ошибку, вы можете попробовать добавить следующие метаданные отображения жизненного цикла для activejdbc-instrumentation
Плагин для выполнения своей цели:
...
<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.javalite</groupId>
<artifactId>activejdbc-instrumentation</artifactId>
<versionRange>[1.4.9,)</versionRange>
<goals>
<goal>instrument</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.javalite</groupId>
...
См. http://wiki.eclipse.org/M2E_plugin_execution_not_covered для получения дополнительной информации об этой ошибке.
Это чисто проблема с плагином Eclipse. Вот два решения
- Ваш проект будет пытаться собрать из командной строки. Пытаться
mvn clean install
- Вы можете переключиться на intellij - это имеет гораздо лучшую встроенную поддержку для maven без использования какого-либо плагина.
Очевидно, что в зависимости от типа упаковки pom сборка по умолчанию связывается с различными фазами жизненного цикла. Если вы пытались запустить выполнение в фазе: классы процесса, попробуйте изменить его на тот, который должен пройти pom packagin. Я не уверен, что это правильный способ исправить это, но это работает для меня. В жизненном цикле сборки maven вы можете видеть, что упаковка pom привязывается к типу упаковки, устанавливает и развертывает, поэтому, если это был ваш пакет, попробуйте изменить фазу, например, на "package", которая для типа pom будет первой фазой.
Теперь, если вы запустите его в консоли, он будет работать, но в Eclipse отметит ошибку. Если вы измените фазу, ошибка исчезнет, и вы все равно сможете ее запустить.
Скорее всего, это быстрое исправление, но если вы просто хотите убедиться, что он выполняется до того, как другие плагины в pom просто убедитесь, что он находится на предыдущей фазе, а не обязательно на той, к которой он принадлежит.