今天在安装Maven项目的时候遇到了如下的这个问题,在这里记录一下。
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war (default-war) on project meinian_service:
Execution default-war of goal org.apache.maven.plugins:maven-war-plugin:2.2:war failed:
Unable to load the mojo 'war' in the plugin 'org.apache.maven.plugins:maven-war-plugin:2.2' due to an API incompatibility:
org.codehaus.plexus.component.repository.exception.ComponentLookupException: null
[ERROR] -----------------------------------------------------
[ERROR] realm = plugin>org.apache.maven.plugins:maven-war-plugin:2.2
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
为了确定出错的具体原因,笔者将项目依次进行 clean、compile、package
和 install 。发现是在将项目打包的时候出错。到这里,基本可以确定与代码无关了。
随后,在控制台输出的报错信息中发现了一条重要的出错信息即:
realm = plugin>org.apache.maven.plugins:maven-war-plugin:2.2
猜测可能是因为 maven-war-plugin:2.2这个插件版本太低导致将项目打成war包失败了,然后在pom.xml文件中引入更新版本的插件项目就能正常安装了。到此问题解决。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.1</version>
</plugin>
这里贴出Maven仓库的地址,可以根据需要获取相应版本:传送门