Ошибка «Плагин не найден для префикса» в Eclipse - PullRequest
16 голосов
/ 14 сентября 2011

В Eclipse я импортировал проект на основе Maven, который использует плагин Maven Jetty. Если я запускаю mvn jetty:run из командной строки, все работает нормально. Если я добавляю конфигурацию запуска в Eclipse и пытаюсь запустить ее, я получаю сообщение об ошибке:

<code>[ERROR] No plugin found for prefix 'jetty' in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositories [local (/home/eugene/.m2/repository), central (<a href="http://repo1.maven.org/maven2)]" rel="noreferrer">http://repo1.maven.org/maven2)]</a> -> [Help 1]

В конфигурации запуска Eclipe я использую:

  • Базовый каталог: ${project_loc}
  • Цель: jetty:run
  • Maven Runtime: Внешний

Я прочитал страницу [ Help1 ]. У меня нет настроек группы плагинов в файлах конфигурации maven, но у меня есть плагин jetty, упомянутый в pom.xml, поэтому я думаю, что все должно быть хорошо (особенно потому, что все работает в командной строке). Я попытался «Запустить как> Maven clean» в Eclipse перед выполнением конфигурации запуска на пристани, но это не помогло. Проект компилирует и проходит все тесты, только пристань: запуск не работает в Eclipse.

Пожалуйста, помогите, я новичок в Eclipse & Maven. Заранее спасибо.

Ответы [ 5 ]

20 голосов
/ 14 сентября 2011

Это также не работает для меня из командной строки.

Можете ли вы проверить, работает ли оно после добавления следующего в settings.xml как документированного ?

<pluginGroups>
    <pluginGroup>org.mortbay.jetty</pluginGroup>
</pluginGroups>

Также обратите внимание, что существует две разные версии плагина - старый плагин maven jetty и новый плагин jetty maven .

10 голосов
/ 08 ноября 2012

Я тоже сталкивался с этой проблемой, проще решить эту проблему, отредактировав pom.xml, добавив следующий плагин:

<project>
  ...
  <build>
    <plugins>
      ...
      <plugin>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>jetty-maven-plugin</artifactId>
        <version>7.6.8.v20121106</version>
      </plugin>
      ...
    </plugins>
  </build>
  ...
</project>

Примечание :

  1. jetty-maven-plugin используется для версии 7 и выше, если вы хотите версию 6 для пристани, вы должны использовать maven-jetty-plugin

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

4 голосов
/ 03 июля 2013

У меня возникла эта проблема в Eclipse после импорта проекта appengine.

Цель:

mvn appengine:devserver

Ошибка:

[ERROR] No plugin found for prefix 'appengine' in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositories [local (/Users/averasko/.m2/repository), central (http://repo.maven.apache.org/maven2)] -> [Help 1]

Проблема былав неправильном базовом каталоге в eclipse запустить конфигурацию .Когда maven не видит файл pom.xml и его просят запустить какую-то нестандартную цель, если он терпит неудачу, как это, поскольку он ничего не знает о плагине, который определяет цель.

Решение состоит в том, чтобы исправить базовый каталог в том месте, где находится ваш файл pom.xml .

4 голосов
/ 15 сентября 2011

Я прошу прощения за трату вашего времени.Теперь я просмотрел предупреждения maven, которые появились в консоли Eclipse после запуска конфигурации запуска.Я заметил

[ПРЕДУПРЕЖДЕНИЕ] Не удалось получить дескриптор плагина для плагина [org.mortbay.jetty: maven-jetty-plugin]: null

, поэтому стало очевидно, почемуон не может распознать префикс jetty:.Пару строк выше я видел кучу предупреждений об отсутствующих версиях плагинов.Поэтому я добавил спецификацию версии для плагина Jetty (запись <version> в pom.xml), и это решило проблему.Я забыл общее правило, что если что-то ломается, первое, что нужно проверить, - это предупреждения, которые вы получаете.

3 голосов
/ 08 марта 2013

если вы следуете этому уроку:

http://tapestry.apache.org/creating-the-skeleton-application.html

не забудьте выполнить эту важную инструкцию:

Перейдите во вновь созданный каталог и выполните команду:

...