更新到m2e 1.6导致“生命周期映射冲突”错误

时间:2015-06-30 09:52:08

标签: eclipse maven m2e maven-war-plugin m2e-wtp

在我的Eclipse Luna SR2(4.4.2)中运行更新后,我安装了m2e 1.6.1.20150625-2338。对于我现在使用maven-war-plugin的项目,我在问题视图中遇到以下错误:

problems view

全文:

  

生命周期映射冲突(插件执行   “org.apache.maven.plugins:maven-war-plugin:2.3:war(执行:   war-standalone,phase:package)“)。要启用完整功能,   删除冲突的映射并运行Maven-> Update Project   配置。

     

生命周期映射冲突(插件执行   “org.apache.maven.plugins:maven-war-plugin:2.3:war(执行:   war-standalone,phase:package)“)。要启用完整功能,   删除冲突的映射并运行Maven-> Update Project   配置。

插件配置不会导致以前版本的m2e出现问题。它在pom看起来不错,没什么不寻常的:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <executions>
        <execution>
            <id>war-standalone</id>
            <goals>
                <goal>war</goal>
            </goals>
            <phase>package</phase>
            <configuration>
                ...
            </configuration>
        </execution>
        <execution>
            <id>war-overlay</id>
            <goals>
                <goal>war</goal>
            </goals>
            <phase>package</phase>
            <configuration>
                ...
            </configuration>
        </execution>
    </executions>
</plugin>

pom中未配置maven-war-plugin的生命周期映射。我检查它是否在父母poms但找不到任何东西。 “工作空间生命周期映射”元数据中也没有。

然后我注意到m2e-wtp插件(映射似乎来自)仍然是旧版本。我将其更新为1.2.0.20150602-1740,但它没有解决问题。

任何想法如何追踪冲突映射的位置或者如何正确解决问题?

1 个答案:

答案 0 :(得分:1)

从m2e 1.6.0升级到m2e 1.6.1时遇到了同样的冲突问题,但是在使用groovy-eclipse-compiler配置的maven-compiler-plugin上面临着冲突问题。

经过调查,我发现this commit很可能是错误的起源,因为它改变了配置程序的加载方式,并可能导致加载更多的配置程序。就我而言,似乎加载了默认编译器配置器 groovy eclipse编译器配置器,从而导致冲突。