2012-05-03 174 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>