【问题标题】:Aggregate Javadocs and Maven Release Plugin on Jenkins在 Jenkins 上聚合 Javadocs 和 Maven 发布插件
【发布时间】:2016-03-03 03:44:38
【问题描述】:

是否有一种万无一失的方法可以使用 Maven 发布插件插件为 Jenkins 作业中的多模块 Maven 反应器项目生成 聚合 Javadocs?

我的问题是,在 maven-release-plugin 更新了所有 POM 版本之后,下一个构建将中断,因为 javadoc:aggregate 在 reactor POM 上失败,因为模块工件的引用版本尚不存在。

我的解决方法是使用配置文件在禁用maven-javadoc-plugin 的情况下运行一次构建。然后在重新启用maven-javadoc-plugin 后,下一个构建将通过。

这有点像 hack,我想知道我是否只是遗漏了一些简单的东西......

这是我在 reactor POM 中的maven-javadoc-plugin 配置:

    <profile>
        <id>javadoc</id>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>aggregate-javadoc</id>
                            <phase>post-integration-test</phase>
                            <goals>
                                <goal>aggregate</goal>
                            </goals>
                        </execution>
                    </executions>
                    <inherited>false</inherited>
                </plugin>
            </plugins>
        </build>
    </profile>

【问题讨论】:

    标签: maven jenkins maven-release-plugin maven-javadoc-plugin


    【解决方案1】:

    我刚刚遇到同样的问题,在玩了一会儿之后,结果发现使用aggregate-jar 目标可以正常工作(它生成基本的聚合 javadoc 和另外的 jar 文件,但后者可以被丢弃) .

    我认为这是由于目标执行绑定到的不同默认生命周期阶段以及在aggregate 阶段的情况下额外执行generate-sources 阶段造成的:

    【讨论】:

      猜你喜欢
      • 2019-10-27
      • 2018-06-02
      • 2013-09-06
      • 2014-09-12
      • 2013-04-02
      • 2018-03-29
      • 2015-11-25
      • 1970-01-01
      • 2013-01-16
      相关资源
      最近更新 更多