Maven项目报错:“Plugin execution not covered by lifecycle configuration”解决过程
Maven项目POM文件报错如下:
“Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:flatten-maven-plugin: 1.1.0:flatten (execution: flatten, phase: process-resources)”
这表示m2e在其执行maven的生命周期管理时没有定义该插件,所以提示出错,其实m2e对此是提供了扩展机制的,以下是解决过程:
1.进入Window—>Preferences—>Maven配置,进入Lifecycle Mapping设置项,如下图:
从上图可以看出m2e管理maven生命周期的文件名是lifecycle-mapping-metadata.xml,以及该文件的存放路径。
2.到上面的路径修改lifecycle-mapping-metadata.xml文件,但发现该路径下文件并不存在。
3.接着到eclipse安装目录下的plugins下的org.eclipse.m2e.lifecyclemapping.defaults_xxxxxx.jar文件中找到该文件(如下图):
解压得到lifecycle-mapping-metadata.xml文件,把它放置到步骤1图中所示的路径下。
4.修改刚才的xml文件,把未识别的插件在文件中加入即可。
根据报错提示“Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:flatten-maven-plugin: 1.1.0:flatten (execution: flatten, phase: process-resources)”
缺少的是org.codehaus.mojo:flatten-maven-plugin: 1.1.0版本为1.1.0的插件,阶段是flatten,于是在xml文件中添加如下代码:
5.修改完成后,重启eclipse,对Maven项目update即可
后续出现Plugin execution not covered by lifecycle configuration:此类错误均可尝试此方式解决。
参考文献:https://www.jianshu.com/p/777eb051c545?from=timeline&isappinstalled=0