m2e 1.5.x / Eclipse Luna中maven-plugin-plugin的生命周期配置未涵盖插件执行

时间:2014-08-04 12:58:34

标签: eclipse maven maven-plugin m2e eclipse-luna

升级到Eclipse Luna或m2e 1.5.x并使用Maven插件项目打开现有工作区后,Eclipse抱怨

Plugin execution not covered by lifecycle configuration:
org.apache.maven.plugins:maven-plugin-plugin ...

4 个答案:

答案 0 :(得分:5)

在版本1.4.x之前,maven-plugin-plugin被m2e附带的默认生命周期映射覆盖。

从版本1.5.x开始,m2e默认生命周期映射不再涵盖maven-plugin-plugin。

要获得m2e版本1.5.x的maven-plugin-plugin支持,请安装新的Maven Development Tools插件。

升级到Eclipse Luna后可能会发现此问题,因为默认情况下它附带1.5.x。

答案 1 :(得分:4)

您还可以将eclipse配置为忽略或仅针对此问题发出警告。

enter image description here

答案 2 :(得分:2)

你需要告诉m2eclipse如何处理插件执行。

如果消息是例如:     Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-plugin-plugin:3.2:descriptor

使用以下代码段:

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.eclipse.m2e</groupId>
                <artifactId>lifecycle-mapping</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <lifecycleMappingMetadata>
                        <pluginExecutions>
                            <pluginExecution>
                                <pluginExecutionFilter>
                                    <groupId>org.apache.maven.plugins</groupId>
                                    <artifactId>maven-plugin-plugin</artifactId>
                                    <versionRange>[3.2,)</versionRange>
                                    <goals>
                                        <goal>descriptor</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <ignore />
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

答案 3 :(得分:1)

对于那些带着较新 Eclipse 版本(在撰写本文时为 2020-12)来到这里的人。

有一个包含以下部分的 M2Eclipse 页面 Execution Not Covered

<块引用>

Eclipse 4.2 添加默认映射

如果您使用 Eclipse [...] 并且在映射时遇到问题并且不会将混乱放入您的 pom.xml 创建一个新文件 lifecycle-mapping-metadata.xml 并在 Windows 中配置它 em> → PreferencesMavenLifecycle Mappings(不要忘记按Reload workspace Lifecycle mappings metadata之后此文件的每次更改!)。

[由我进行更正和格式化。]

对于maven-plugin-plugin

  1. 将以下内容添加到 lifecycle-mapping-metadata.xml

         <pluginExecution>
             <pluginExecutionFilter>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-plugin-plugin</artifactId>
                 <versionRange>[0,)</versionRange>
                 <goals>
                     <goal>descriptor</goal>
                     <goal>helpmojo</goal>
                 </goals>
             </pluginExecutionFilter>
             <action>
                 <ignore />
             </action>
         </pluginExecution>
    
  2. 重新加载工作区生命周期映射元数据

  3. 右键单击项目 → Maven更新项目...Alt+F5

  4. 查看带有生命周期配置未涵盖的插件执行的标记:...消失。

  5. 赞成这个答案。 :)

另请参阅 the bountied answer如何映射 Eclipse m2e 插件未涵盖的 Maven 生命周期阶段?