maven-2 - Maven 插件在构建过程中多次执行

标签 maven-2 maven maven-plugin

我有一个带有多个重叠配置文件的 Maven 项目。我想在每次构建开始时显示事件配置文件。所以我把以下内容放入pom.xml <build>部分:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-help-plugin</artifactId>
    <version>2.1.1</version>
    <executions>
        <execution>
            <id>display-active-profiles-at-start-of-build</id>
            <phase>validate</phase>
            <goals>
                <goal>active-profiles</goal>
            </goals>
        </execution>
    </executions>
</plugin>

问题是插件在构建过程中多次执行:
  • 在构建开始时(在 validate 阶段)。
  • jar:jar执行。
  • source:jar/期间 pre-integration-test (?),当 Jetty 正在启动时。

  • 指定 <phase>initialize</phase> 时的类似结果.有没有办法让它只在构建开始时运行?

    最佳答案

    它执行多次的原因是因为您的一个插件正在执行另一个生命周期作为其魔力的一部分。
    source:jar绝对可以,正如 its documentation 所指定的那样.

    Invokes the execution of the lifecycle phase generate-sources prior to executing itself.


    jar:jar通常不会,但可能是您有另一个插件可以衍生另一个生命周期。

    在生成源 jar 的情况下,您通常不需要另一个生命周期,插件作者通过实现 jar-no-fork mojo 认识到这一点。 .

    您可以将其替换为默认值 jar mojo,按照此处描述的步骤 -> http://maven.apache.org/plugins/maven-source-plugin/usage.html

    关于maven-2 - Maven 插件在构建过程中多次执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8041610/

    相关文章:

    maven - 找不到 sonar-maven-plugin 5.1.1

    java - 如何将 Maven 插件中 @Parameter 的 defaultValue 设置为方法的结果?

    java - 如果 Maven 属性不符合约定,则 Maven 构建失败

    java - 将键/值对附加到 Nexus 中的 Artifact

    maven-2 - mvn :deploy and mvn:install commands? 和有什么区别

    maven-2 - 仅当设置了属性时才在 Maven 中运行 Ant 任务

    java - Maven 根据配置文件更新属性

    java - Maven Jdepend 报告不包含任何数据

    unit-testing - 如何使用 maven-surefire-plugin 在同一项目中执行 JUnit 和 TestNG 测试?

    引用工作区目录的 maven 变量