Плагин не найден для префикса 'jetty' в текущем проекте
В моем проекте pom.xml добавлен код плагина mvn Jetty.
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.26</version>
<configuration>
<contextPath>/redkites</contextPath>
</configuration>
<executions>
<execution>
<id>start-jetty</id>
<phase>deploy</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<daemon>true</daemon>
</configuration>
</execution>
</executions>
</plugin>
Когда я использую команды sudo mvn compile
и sudo mvn clean install
, я не нашел ошибок и не сработал успешно, но когда я набираю команду sudo mvn jetty:run
, я получаю сообщение об ошибке:
[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 (/root/.m2/repository), central (http://repo.maven.apache.org/maven2)] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/NoPluginFoundForPrefixException
Пожалуйста, предложите способ его решения. Спасибо вам
Ответы
Ответ 1
Вам может потребоваться добавить org.mortbay.jetty
в список groupId
по умолчанию.
Итак, отредактируйте свой ${user.home}/.m2/settings.xml
соответственно:
<pluginGroups>
<!-- your existing plugin groups if any -->
...
<pluginGroup>org.mortbay.jetty</pluginGroup>
</pluginGroups>
Цитирование Shortening the Command Line
раздела руководство по разработке плагинов,
... добавьте вашу плагин groupId в список поиска по группам по умолчанию. Для этого вам необходимо добавить следующие ${user.home}/. m2/settings.xml файл:
<pluginGroups>
<pluginGroup>sample.plugin</pluginGroup>
</pluginGroups>
Посмотрите здесь, чтобы узнать о том, что groupId
проверено по умолчанию:
По умолчанию Maven будет искать groupId org.apache.maven.plugins для prefix-to-artifactId для плагинов, необходимых для выполнения данная сборка.
...
Maven всегда будет искать следующую группу. после поиска любых групп плагинов, указанных в пользовательских настройках:
- org.apache.maven.plugins
- org.codehaus.mojo
Ответ 2
если вы не найдете файл settings.xml в своем домашнем каталоге
затем добавьте файл настроек по умолчанию .xml
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>${user.home}/.m2/repository</localRepository>
<interactiveMode>true</interactiveMode>
<usePluginRegistry>false</usePluginRegistry>
<offline>false</offline>
<pluginGroups>
<pluginGroup>org.mortbay.jetty</pluginGroup>
</pluginGroups>
</settings>
Ответ 3
Я запускал команду в каталоге, в котором был проект, но команда отлично работала после переключения в один каталог вверху, то есть в одном, в котором присутствовали все файлы проекта.
Ответ 4
То, что сработало для меня в мультимодульном проекте Maven в Eclipse:
1 Откройте диалог "Конфигурации запуска".
2. Посмотрите на "Базовый каталог": действительно ли существует каталог вашего webapps-подмодуля или он является каталогом родительского модуля s?
3 Если это последний, нажмите кнопку "Рабочее пространство" и выберите каталог подмодулей (webapps).
Ответ 5
Это случилось со мной однажды, потому что вместо
jetty:start
Я (как-то) попробовал
{application-name:start}
И я потерял несколько часов, прежде чем смог понять эту тупую ошибку.