【问题标题】:Include older m2e plugins with m2e 1.0+ using life-cycle mapping?使用生命周期映射在 m2e 1.0+ 中包含较旧的 m2e 插件?
【发布时间】:2011-10-02 06:17:01
【问题描述】:

我想启用 m2e v 1.0 中不可用的旧插件

我已将此添加到 POM,但如果有多个项目,它将不起作用。

    <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-dependency-plugin</artifactId>
                                    <version>[0.0.0,)</version>
                                    <goals>
                                        <goal>unpack</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <execute />
                                </action>
                            </pluginExecution>
                            <pluginExecution>
                                <pluginExecutionFilter>
                                    <groupId>org.codehaus.mojo</groupId>
                                    <artifactId>build-helper-maven-plugin</artifactId>
                                    <version>[0.0.0,)</version>
                                    <phase>generate-sources</phase>
                                    <goals>
                                        <goal>add-source</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <execute />
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>

我也尝试了以下变体。

    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.eclipse.m2e</groupId>
                <artifactId>lifecycle-mapping</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <lifecycleMappingMetadata>
                        <lifecycleMappings>
                            <lifecycleMapping>
                                <pluginExecutions>
                                    <pluginExecution>
                                        <pluginExecutionFilter>
                                            <groupId>org.apache.maven.plugins</groupId>
                                            <artifactId>maven-dependency-plugin</artifactId>
                                            <version>[0.0.0,)</version>
                                            <goals>
                                                <goal>unpack</goal>
                                            </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                            <execute />
                                        </action>
                                    </pluginExecution>
                                </pluginExecutions>
                            </lifecycleMapping>
                            <lifecycleMapping>
                                <pluginExecutions>
                                    <pluginExecution>
                                        <pluginExecutionFilter>
                                            <groupId>org.codehaus.mojo</groupId>
                                            <artifactId>build-helper-maven-plugin</artifactId>
                                            <version>[0.0.0,)</version>
                                            <phase>generate-sources</phase>
                                            <goals>
                                                <goal>add-source</goal>
                                            </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                            <execute />
                                        </action>
                                    </pluginExecution>
                                </pluginExecutions>
                            </lifecycleMapping>
                        </lifecycleMappings>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>

我得到的错误信息是:

无法解析 maven 项目 MavenProject 的生命周期映射元数据:com.sakriom:drools-context:0.0.1-SNAPSHOT @ D:\Documents and Settings.....\Workspaces\Eclipse 3.6 - Scala\DroolsContext\pom。 xml 原因:无法识别的标签:“版本”(位置:已看到 START_TAG ...\r\n ...@10:22)

这个错误信息是如何解码的?

【问题讨论】:

  • 你能把pom.xmlSTART_TAG所在的部分贴出来吗?
  • 你真的希望我们知道没有代码的第 8 行是什么吗?显然,标签 在你放置的地方是不允许的。

标签: m2eclipse lifecycle m2e


【解决方案1】:

"Cause: Unrecognized tag: 'version'" -- 它抱怨&lt;version&gt;[0.0.0,)&lt;/version&gt; 标签,因为它不属于&lt;pluginExecutionFilter&gt;。你应该改用&lt;versionRange&gt;[0.0.0,)&lt;/versionRange&gt;

【讨论】:

    【解决方案2】:

    "Cause: Unrecognized tag: 'version'" -- 它抱怨&lt;version&gt;[0.0.0,)&lt;/version&gt; 标签,因为它不属于&lt;pluginExecutionFilter&gt;。你应该改用&lt;versionRange&gt;[0.0.0,)&lt;/versionRange&gt;

    【讨论】:

    • 这个双重帖子在这里是因为一些mod合并了OP的重复帖子,我也回答了。
    【解决方案3】:

    第 8 行不允许使用元素 version

    如果您需要更多帮助,请将pom-xml 的相关部分添加到您的问题中。

    [编辑]根据您提供的 POM,问题在于您正在使用项目的 version 元素中的属性。 Maven 仅支持所有其他 version 元素中的属性,但不支持这个。

    但错误信息似乎有点奇怪。尝试最新的 Maven 版本 (3.0.3)。如果仍然出现同样的错误,请创建一个显示问题的小型演示 POM(尽可能删除)并在 Maven issue tracker 中打开一个错误。

    【讨论】:

    猜你喜欢
    • 2012-06-04
    • 2011-11-16
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    • 2012-10-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多