例如,考虑以下目录结构:
Project |-- pom.xml |-- Module1 | `-- pom.xml |-- Module2 | `-- pom.xml `-- Module3 `-- pom.xml
注意:<aggregate/>参数自 2.5 起已弃用。请使用聚合目标代替。
< aggregate/>参数可用于为多模块项目生成 javadocs。它提供了为整个项目(所有模块)生成一份 javadoc 报告或为每个模块生成一份 javadoc 报告的选项。
当您从 Project 目录执行 javadoc:javadoc 并将 aggregate 设置为true时,将在 Project 的目标目录中创建一个 javadoc 报告,其中包含 Project 模块的所有 javadoc。如果 aggregate 设置为false(默认),Module1 的目标目录中将生成 Module1 的 javadoc 报告,Module2 的目标目录中将生成 Module2 的 javadoc 报告,Module3 的 javadoc 报告将在Module3 的目标目录。
<project> ... <reporting> (or <build>) <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.6.1</version> <configuration> ... <aggregate>true</aggregate> ... </configuration> </plugin> </plugins> ... </reporting> (or </build>) ... </project>
<aggregate/>参数不包括使用build-helper:add-source定义的生成源目录。在这种情况下,您需要使用聚合目标和测试聚合目标。您可以在 <build/> 元素(使用 <execution/> 标签)或 <reporting/> 元素(使用 <reportSet/> 标签)中定义这些目标,如下所示。有关更多信息,请参阅选择性 Javadocs 报告页面。
<project> ... <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.6.1</version> <configuration> <!-- Default configuration for all reports --> ... </configuration> <executions> <execution> <id>aggregate</id> <goals> <goal>aggregate</goal> </goals> <phase>site</phase> <configuration> <!-- Specific configuration for the aggregate report --> ... </configuration> </execution> ... </executions> </plugin> ... </plugins> </build> ... </project>
<project> ... <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.6.1</version> <configuration> <!-- Default configuration for all reports --> ... </configuration> <reportSets> <reportSet> <id>non-aggregate</id> <configuration> <!-- Specific configuration for the non aggregate report --> ... </configuration> <reports> <report>javadoc</report> </reports> </reportSet> <reportSet> <id>aggregate</id> <configuration> <!-- Specific configuration for the aggregate report --> ... </configuration> <reports> <report>aggregate</report> </reports> </reportSet> ... </reportSets> </plugin> ... </plugins> </reporting> ... </project>
Javadoc 插件包含几个与聚合器项目一起使用的聚合目标。以下是所有汇总目标的完整列表: