【问题标题】:Maven - Multi module project - How to configure/control plugin execution orderMaven - 多模块项目 - 如何配置/控制插件执行顺序
【发布时间】:2019-02-02 06:16:24
【问题描述】:

我们有多模块项目 - 目前,当我从父 pom 文件触发构建时,构建开始并遍历各个模块(为每个模块生成 jar 文件)并将它们捆绑以创建单个 war 文件。

这里我们已经配置了 checkstyle,考虑一下我们是否有任何 checkstyle 违规 Maven 构建将在构建结束时(几乎一个小时后)突出显示它并导致构建不成功..

  • 我们如何才能使 maven 构建高效,这将明智地检查 checkstyle 违规模块并在进行完整构建之前突出显示 checkstyle 违规..

  • 有没有办法在 Maven 中进行完整构建之前触发所有模块的检查样式构建..

示例:假设我有 10 个模块,如果在 module-3 构建中存在任何 checkstyle 违规,则应该停止并突出显示 checkstyle 违规,而不是遍历所有模块并在 1 小时构建后突出显示相同的内容..

【问题讨论】:

    标签: java maven-3 maven-assembly-plugin


    【解决方案1】:

    我假设你已经在父 pom.xml 中配置了 checkstyle 插件。

    如果是这种情况,一种解决方案是在每个单独的子 pom 中配置它,以便它作为子模块构建过程的一部分运行。

    这应该会导致子构建失败并提前终止整个构建。

    【讨论】:

      【解决方案2】:

      您需要在子 pom 中指定构建生命周期,如下所示。像 include

      <failsOnError>true</failsOnError>
      
      <project>
      ...
      <build>
      ...
       <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-checkstyle-plugin</artifactId>
          <version>2.8</version>
          <executions>
            <execution>
              <phase>process-sources</phase>
              <goals>
                <goal>check</goal>
              </goals>
            </execution>
          </executions>
          <configuration>
            <failsOnError>true</failsOnError>
          </configuration>
        </plugin>
       </plugins>
      </build>
      </project>
      

      【讨论】:

        猜你喜欢
        • 2011-09-03
        • 2014-01-28
        • 2022-08-15
        • 2017-09-21
        • 1970-01-01
        • 2016-04-16
        • 2017-12-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多