web-dev-qa-db-ja.com

現在のプロジェクトおよびプラグイングループ(ローカル、セントラル)でプレフィックス「jetty」のプラグインが見つかりません

Webappを簡単に実行するために、Jettyを単一のPOMファイルに追加することにしました。

公式ドキュメント に従って、これを<plugins>に追加しました:

  <plugin>
    <groupId>org.Eclipse.jetty</groupId>
    <artifactId>jetty-maven-plugin</artifactId>
    <version>9.4.0-SNAPSHOT</version>
  </plugin>

[〜#〜]問題[〜#〜]mvn jetty:runは失敗します:

$ mvn jetty:start
[INFO] Scanning for projects...
[WARNING] The POM for org.Eclipse.jetty:jetty-maven-plugin:jar:9.4.0-SNAPSHOT is missing, no dependency information available
[WARNING] Failed to retrieve plugin descriptor for org.Eclipse.jetty:jetty-maven-plugin:9.4.0-SNAPSHOT: Plugin org.Eclipse.jetty:jetty-maven-plugin:9.4.0-SNAPSHOT or one of its dependencies could not be resolved: Could not find artifact org.Eclipse.jetty:jetty-maven-plugin:jar:9.4.0-SNAPSHOT
Downloading: https://repo.maven.Apache.org/maven2/org/Apache/maven/plugins/maven-metadata.xml
Downloading: https://repo.maven.Apache.org/maven2/org/codehaus/mojo/maven-metadata.xml
Downloaded: https://repo.maven.Apache.org/maven2/org/Apache/maven/plugins/maven-metadata.xml (13 KB at 2.1 KB/sec)
Downloaded: https://repo.maven.Apache.org/maven2/org/codehaus/mojo/maven-metadata.xml (20 KB at 3.2 KB/sec)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 7.013 s
[INFO] Finished at: 2016-08-17T16:49:28+09:00
[INFO] Final Memory: 14M/307M
[INFO] ------------------------------------------------------------------------
[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/nico/.m2/repository), central (https://repo.maven.Apache.org/maven2)] -> [Help 1]

https://mvnrepository.com/artifact/org.Eclipse.jetty/jetty-maven-plugin/9.4.0.M の別のアプローチでは、<dependencies>にこれを追加することを提案しています。

            <dependency>
                <groupId>org.Eclipse.jetty</groupId>
                <artifactId>jetty-maven-plugin</artifactId>
                <version>9.4.0.M0</version>
            </dependency>

それも失敗します、mvn jetty:startは言います:

[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/nico/.m2/repository), central (https://repo.maven.Apache.org/maven2)] -> [Help 1]

.m2フォルダーを削除し、Mavenに再作成させました。 settings.xml~/.m2がありません。ここに~/.m2/repository/org/Eclipse/jetty/jetty-maven-plugin/9.4.0.M0/の内容があります:

-rw-rw-r-- 1 nico nico 101524  8月 24 17:29 jetty-maven-plugin-9.4.0.M0.jar
-rw-rw-r-- 1 nico nico     40  8月 24 17:29 jetty-maven-plugin-9.4.0.M0.jar.sha1
-rw-rw-r-- 1 nico nico   5526  8月 24 17:28 jetty-maven-plugin-9.4.0.M0.pom
-rw-rw-r-- 1 nico nico     40  8月 24 17:28 jetty-maven-plugin-9.4.0.M0.pom.sha1
-rw-rw-r-- 1 nico nico    215  8月 24 17:29 _remote.repositories

注:同じトピックにはいくつかの質問がありますが、JettyがEclipseに移行する前のMaven ID(mortbay、codehaus)を含む古い回答があるか、次の<plugin>ブロックを追加することをお勧めします。私の質問のトップ。

9
Nicolas Raoul

プラグインバージョン9.4.0-SNAPSHOTを使用しています。このバージョンは、中央リポジトリでは使用できません( available versions )。

依存関係はdependencyと同じではないため、pluginを追加しても問題は解決しません。依存関係は、コンパイルするコードによって使用または必須であり、プラグインはcompile、buildまたは、コードを分析します。

要するに:

  • jetty-maven-plugindependencyは必要ありません
  • versionpluginを中央リポジトリまたはローカルリポジトリで利用可能なバージョンに変更する必要があります。
    例えば:

    <plugin>
        <groupId>org.Eclipse.jetty</groupId>
        <artifactId>jetty-maven-plugin</artifactId>
        <version>9.4.0.M0</version>
    </plugin>
    
14
Josef Reichardt

次の情報を使用して、ローカルリポジトリのsettings.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>

それは私のために働いています。

1
user4138991