2012-05-03 172 views
15

我有麻煩如下因素這http://hrycan.com/2012/03/28/primefaces-lazy-loading-datatable-for-jsf2/缺少Maven插件碼頭

它說我應該只是運行

mvn jetty:run 

,但我一直在遇到這個錯誤。

org.apache.maven.plugin.prefix.NoPluginFoundForPrefixException: No plugin found 
for prefix 'jetty' in the current project and in the plugin groups [org.apache.m 
aven.plugins, org.codehaus.mojo] available from the repositories [local (C:\MyRepo), central (http://repo1.maven.org/maven2)] 
     at org.apache.maven.plugin.prefix.internal.DefaultPluginPrefixResolver.r 

我在這裏使用了Maven 3。

有什麼想法?

地址:

從鏈接,它有這個已經在pom.xml

<plugin> 
    <groupId>org.mortbay.jetty</groupId> 
    <artifactId>jetty-maven-plugin</artifactId> 
    <version>7.5.1.v20110908</version> 
    <dependencies> 
     <dependency> 
      <groupId>mysql</groupId> 
      <artifactId>mysql-connector-java</artifactId> 
      <version>${mysql.version}</version> 
     </dependency> 
    </dependencies> 
</plugin> 
+0

[「Eclipse插件未找到前綴」錯誤](http:// stackoverflow。com/questions/7414075/plugin-not-found-for-prefix-error-in-eclipse) – naXa

回答

7

你的插件添加到pom.xml的?快速谷歌搜索發現這一點:

<project> 
    ... 
    <build> 
    ... 
    <plugins> 
     <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>jetty-maven-plugin</artifactId> 
     </plugin> 
    </plugins> 
    </build> 
</project> 

在這裏找到: http://mojo.codehaus.org/jetty-maven-plugin/usage.html

+1

對不起忘了添加這個..它有這個插件 –

+9

對我來說,沒有工作「原樣」。我必須將groupId行設置爲' org.mortbay.jetty'。我第一次運行maven時也必須完全限定插件:'mvn org.mortbay.jetty:jetty-maven-plugin:run'。這不像Dariop答案似乎暗示的那樣簡單(至少對於像我這樣的完整n00bs)來說。 – rsenna

+0

請參閱@Doug – Erik

1

我有這個問題了。我使用「Maven Build」運行配置從Eclipse內部開始jetty:run

問題是,在我的Maven Build運行配置中,「基本目錄」(即mvn可執行文件使用的工作目錄)設置不正確。將基礎目錄設置爲包含pom.xml的目錄解決了問題。

31

http://www.eclipse.org/jetty/documentation/current/jetty-maven-plugin.html)的指示說要把版本作爲$ {project.version}這是錯誤的!此外,較早的文檔將groupId設置爲org.codehaus.mojo,它應該設置爲org.eclipse.jetty。

我添加了一個真正的版本從碼頭回購(http://repo.maven.apache.org/maven2/org/eclipse/jetty/jetty-maven-plugin/)並更改了groupId。

<plugin> 
    <groupId>org.eclipse.jetty</groupId> 
    <artifactId>jetty-maven-plugin</artifactId> 
    <version>9.0.5.v20130815</version> 
</plugin> 
+0

這是我唯一的選擇,也許官方的答案已過時? –

+0

@Doug你是如何找到jetty插件的正確碼頭版本的 –

+1

@Diode我搜索了mvn倉庫:http://mvnrepository.com/artifact/org.eclipse.jetty。 – Doug

3

確保您在項目目錄中執行命令'mvn jetty:run'。如果您將列出當前目錄,您應該看到pom.xml。

如果你是不是在你的項目和運行「命令mvn碼頭:運行」,會得到錯誤「缺少Maven插件碼頭」

 <plugin> 
      <groupId>org.mortbay.jetty</groupId> 
      <artifactId>jetty-maven-plugin</artifactId> 
      <version>8.1.12.v20130726</version> 
      <configuration> 
       <stopKey>todostop</stopKey> 
       <stopPort>9999</stopPort> 
      </configuration> 
     </plugin> 

希望這將有助於

+0

什麼「如果您將列出當前目錄你應該看到pom.xml「的意思? – Pere

4

檢查後才能使用按照記錄在settings.xml中添加以下內容。

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

另外注意的是插件的兩個不同版本 - 老Maven的碼頭,插件和新碼頭 - Maven的插件。
source

+0

這個問題的重複(http://stackoverflow.com/q/27737918/1357094)的答案有關於settings.xml的更多細節 – cellepo

0

最有可能你的版本是錯誤的。嘗試

<plugins> 
     <plugin> 
      <groupId>org.eclipse.jetty</groupId> 
      <artifactId>jetty-maven-plugin</artifactId> 
      <version>9.2.6.v20141205</version> 
     </plugin> 
    </plugins>