Maven-在当前项目和插件组中找不到前缀为“ tomcat7”的插件
我已经创建了一个Maven项目。结构如下:
-parent -core
-web
但是当我尝试使用命令进行部署时mvn tomcat7:deploy
,出现以下错误:
No plugin found for prefix 'tomcat7' in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo]
我将此配置放在了Web项目的pom.xml中:
<build> <finalName>MavenWeb</finalName>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0</version>
</plugin>
</plugins>
</build>
回答:
可以使用插件目标’FQN’来调用插件目标: groupId:artifactId:version:goal
或较短的命令(如果有,可以使用许多变体)。仅使用插件的简称(在您的 tomcat7:deploy中 ,tomcat7是简称,deploy是目标/
mojo)在以下情况下适用:
1)插件的groupId包含在Maven的已知插件组中。 org.apache.maven.plugins 默认在列表中。
要么
您正在调用Maven命令的项目的pom.xml声明了插件
2)artifactId是 [short-name] -maven-plugin 或 maven- [short-name] -plugin
(为Maven项目提供的插件保留了 maven- [short-name] -plugin) 。
这就解释了为什么 mvn compile:compile 可以在任何项目上开箱即用,而 tomcat7:deploy 却不能 __
在您的情况下,第二个条件为true,因此您只需要在要启动命令的项目中声明插件,或将其添加到用户 settings.xml 文件中即可:
<pluginGroups> <pluginGroup>org.apache.tomcat.maven</pluginGroup>
</pluginGroups>
在这里查看更多信息
以上是 Maven-在当前项目和插件组中找不到前缀为“ tomcat7”的插件 的全部内容, 来源链接: utcz.com/qa/423166.html