问题现象
使用eclipse在导入maven项目时,pom文件报错了,报错内容如下:Plugin execution not covered by lifecycle configuration。报错截图:
报错pom.xml截图:
可以看出,所有的错误来源全部都是pom.xml文件,错误类型全部都是Maven Project Build Lifecycle Mapping Problem,错误信息都是Plugin execution not covered by lifecycle configuration,虽然不影响使用,但是随着模块越来越多,这种错误也会越来越多,会在开发时误解其他错误也认为是这种错误。
解决方案
方法1:
在 <build>标签内<plugins> 标签外再加一个 <pluginManagement> 标签,即可解决。但是如果项目多,每个文件都要改,就有些麻烦,这里主要介绍方法2。
方法2:
通过配置lifecycle-mapping-metadata.xml,让eclipse识别这些标签即可。
2.1
window→preference→搜索框输入life,点击lifecycle mappings,开始配置。
2.2
点击open workspace lifecycle mappings metadata,我这里点开直接是空的,应该是以前改过,但是没改完。见图:
如果你跳不到这个文件的话,你需要找到org.eclipse.m2e.lifecyclemapping.defaults_1.8.0.20170516-2043.jar这个包,解压他,你就会看到lifecycle-mapping-metadata.xml文件。
jar包下载地址:
链接:https://pan.baidu.com/s/12gTvANur7LA1HOZH8Yt8mA
提取码:v4gg
2.3
根据错误提示信息,编辑对应的标签到lifecycle-mapping-metadata.xml即可。
groupId对应org.apache.maven.plugins,artifactId对应maven-compiler-plugin,goal对应compile,versionRange就是对应的版本号。
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
<versionRange>[3.1,)</versionRange>
</pluginExecutionFilter>
<action>
<ignore/>
</action>
</pluginExecution>
2.4
全部设置好后,记得点击lifecycle Mappings 设置界面的reload workspace lifecycle mappings metadata,点击应用即可。
最后update project ,就好了,这个就不放图了。
注:
1.可能会遇到的问题:update project的时候卡死,不知道什么原因。
2.如果还不行,直接下载我的lifecycle-mapping-metadata.xml,链接:https://pan.baidu.com/s/14-y7Q9NlyhoMxUWlcqZF2g
提取码:kl4g