使用maven-javadoc-plugin和Maven 3生成多个javadoc报告

时间:2012-04-04 10:36:52

标签: maven-3 maven-site-plugin maven-javadoc-plugin

我们使用自定义doclet从自定义javadoc标记生成报告,并使用Maven网站插件和javadoc插件生成此报告和常规Java API文档。

POM的部分如下所示:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <reportSets>
        <reportSet>
            <id>html</id>
            <reports>
                <report>javadoc</report>
            </reports>
        </reportSet>
        <reportSet>
            <id>custom_report</id>
            <configuration>
                ...
            </configuration>
            <reports>
                <report>javadoc</report>
            </reports>
        </reportSet>
    </reportSets>
</plugin>

在Maven 2下,这很好用,但在Maven 3中只生成一个报告,这是POM中指定的最后一个报告(通过交换reportSet元素来确认)。

经过一些实验,我发现如果我将常规报告的目标从“javadoc”改为“test-javadoc”,那么我从两个报告集中得到了输出。所以问题似乎是,使用Maven 3我无法生成两个使用相同javadoc-plugin目标的报告。

这是一个错误,还是我错过了一些合作?我将maven-javadoc-plugin设置从reporting移动到网站插件的configuration,如http://maven.apache.org/plugins/maven-site-plugin-3.0-beta-3/maven-3.html所述,无济于事。我正在使用Maven 3.0.4,maven-site-plugin 3.0-beta-3和maven-javadoc-plugin 2.8.1。

谢谢!

1 个答案:

答案 0 :(得分:4)

这是bug in maven-reporting-exec component

报告集以报告目标作为关键字保存在地图中。