У меня довольно простой проект Maven:
<project>
<dependencies>
...
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/dependencies</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Тем не менее, я получаю следующую ошибку в m2eclipse:
Description Resource Path Location Type
maven-dependency-plugin (goals "copy-dependencies", "unpack") is not supported by m2e. pom.xml /jasperreports-test line 60 Maven Project Build Lifecycle Mapping Problem
Почему меня волнует, что m2eclipse не «поддерживает» эту задачу? Мэйвен делает, и это все, что меня действительно волнует. Как я могу получить эту ошибку в моем проекте, чтобы уйти?
Ответы:
Кажется, это известная проблема. Вы можете поручить m2e игнорировать это.
Вариант 1: pom.xml
Добавьте следующее в ваш
<build/>
тег:После этого вам нужно будет выполнить Maven ... -> Обновить конфигурацию проекта.
Читать подробнее: http://wiki.eclipse.org/M2E_plugin_execution_not_covered#m2e_maven_plugin_coverage_status
Вариант 2: глобальное переопределение затмения
Чтобы избежать изменения файлов POM, переопределение игнорирования может быть применено ко всему рабочему пространству через настройки Eclipse.
Сохраните этот файл где-нибудь на диске: https://gist.github.com/maksimov/8906462
В
Eclipse/Preferences/Maven/Lifecycle Mappings
Разглядеть к этому файлу и нажмите OK:источник
Эта проблема M2E для выполнения плагина Eclipse M2E не рассматривается .
Чтобы решить эту проблему, все, что вам нужно сделать, это отобразить жизненный цикл, который он не распознает, и дать команду M2E выполнить его.
Вы должны добавить это после вашего
plugins
, внутриbuild
. Это позволит устранить ошибку и сделать М2Э признать цельcopy-depencies
изmaven-dependency-plugin
и сделать POM работу , как и ожидалось, копирование зависимостей в папку каждый раз , когда ECLIPSE строить. Если вы просто хотите проигнорировать ошибку, то измените<execute />
на<ignore />
. Нет необходимости заключатьmaven-dependency-plugin
в себяpluginManagement
, как предлагалось ранее.источник
<plugins>
войти в<pluginManagement>
кого-то, нужно на самом деле переместить<groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId>
туда. Но это о том,<groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId>
что должно быть включено в<pluginManagement>
. При использовании Quick Fix в Eclipse, то же самое добавляется над обычным<plugins>
, и кажется, что расположение тоже работает хорошо. Ключ затем к изменению<ignore>
в<execute>
. Ницца.plugins
внутриbuild
, вы можете добавить это раньше.Если для вашего проекта важны зависимости от копирования, распаковка, упаковка и т. Д., Не стоит игнорировать это. Вы должны заключите
<plugins>
в<pluginManagement>
протестирована с Eclipse , Indigo SR1, Maven 2.2.1источник
<execute />
вместо<ignore />
? Спасибо!<plugin>
в<pluginManagement>
но все еще ссылки это делать свою работу, по- прежнему дает мне такое же предупреждение.<pluginManagement>
мне все еще нужно добавить «обычную» 2 строку<build><plugins><plugin>...
, ссылающуюся на ту, которая настроена в<pluginManagement>
, верно? (Все еще видя, как Юнона жалуется на то же самое, когда<pluginManagement>
plugins
тег вpluginManagement
. Но взгляните на ответ, который я дал ниже, stackoverflow.com/a/12109018/179138 . Предлагаемый игнорирует выполнение, но не выполняет плагин в Eclipse.Чтобы заставить его работать, вместо того, чтобы игнорировать его, вы можете установить соединитель m2e для подключаемого модуля maven-dependency-plugin:
https://github.com/ianbrandt/m2e-maven-dependency-plugin
Вот как вы бы это сделали в Eclipse:
источник
pom.xml
файл после установки плагина, иначе ошибка может не исчезнуть.Несмотря на ответ CaioToOn выше, у меня все еще были проблемы с тем, чтобы это сработало изначально.
После нескольких попыток наконец-то все заработало. Я вставляю свою окончательную версию здесь - надеюсь, что это принесет пользу кому-то еще.
источник
У меня была такая же проблема при попытке загрузить проект Hadoop в Eclipse. Я попробовал решения, описанные выше, и полагаю, что это могло сработать в Eclipse Kepler ... даже больше не уверен (перепробовал слишком много вещей).
Со всеми проблемами, с которыми я столкнулся, я решил перейти на Eclipse Luna, и приведенные выше решения не сработали для меня.
Был еще один пост, который рекомендовал изменить тег ... на пакет. Я начал это делать, и это «очистило бы» ошибки ... Однако я начинаю думать, что изменения меня укусят позже - я не эксперт по Maven.
К счастью, я узнал, как удалить все ошибки. Перейдите в Window-> Preferences-> Maven-> Error / Warnings и измените опцию «Выполнение плагина не охватывается жизненным циклом ...» на «Игнорировать». Надеюсь, поможет.
источник
Я знаю, что это старый пост, но сегодня я тоже боролся с этой проблемой, и я использовал шаблон с этой страницы: http://maven.apache.org/plugins/maven-dependency-plugin/usage.html
и все работает нормально под
m2e
1.3.1.Когда я пытался использовать
Я тоже получил
m2e
ошибку.источник
lifecycle-mapping
плагин Maven, чтобы указать m2e, как обращаться с неподдерживаемым плагином (здесьmaven-dependency-plugin
)Другой вариант - перейти на вкладку «Проблемы», щелкнуть правой кнопкой мыши на ошибке, нажать «Применить быстрое исправление». Должен сгенерировать код игнорирования xml и применить его .pom файл для вас.
источник