No plugin found for prefix 'jetty' in the current project

Prakhash picture Prakhash · Jan 2, 2015 · Viewed 42.4k times · Source

I have added jetty mvn plugin code in my project pom.xml.

<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>

When I use commands sudo mvn compile and sudo mvn clean install, I didn't find any errors & build successfully, but when I type the command sudo mvn jetty:run, I'm getting an error:

[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

Please suggest a way to solve it. Thank you

Answer

mystarrocks picture mystarrocks · Jan 2, 2015

You may need to add org.eclipse.jetty to the list of groupIds looked up by default.

So edit your ${user.home}/.m2/settings.xml accordingly:

<pluginGroups>
  <!-- your existing plugin groups if any -->
  ...
  <pluginGroup>org.eclipse.jetty</pluginGroup>
</pluginGroups>

Quoting the Shortening the Command Line section of the plugin development guide,

... add your plugin's groupId to the list of groupIds searched by default. To do this, you need to add the following to your ${user.home}/.m2/settings.xml file:

<pluginGroups>
  <pluginGroup>sample.plugin</pluginGroup>
</pluginGroups>

Look here for more about what groupIds are looked up default:

By default, Maven will search the groupId org.apache.maven.plugins for prefix-to-artifactId mappings for the plugins it needs to perform a given build.

...

Maven will always search the following groupId's after searching any plugin groups specified in the user's settings:

  • org.apache.maven.plugins
  • org.codehaus.mojo