分组包

要为不同的包设置分组,请使用<groups/>参数,如下所示。每个组将由一个 <title/> 和一个 <packages/> (作为字符串)组成。<packages/> 元素支持通配符 (*) 以允许子包。如果要包含多个包,则每个包名称必须用冒号 (:) 分隔(类似于Javadoc Tool)。

例如,使用以下软件包:

com.mycompany.myapp
com.mycompany.myapp.package1
com.mycompany.myapp.package1.subpackage1
com.mycompany.myapp.package1.subpackage2
com.mycompany.myapp.package1.subpackage3
com.mycompany.myapp.package1.util
com.mycompany.myapp.package2
com.mycompany.myapp.package2.subpackage4
com.mycompany.myapp.package2.subpackage5
com.mycompany.myapp.package2.util

您可以具有以下配置:

<project>
  ...
  <reporting> (or <build>)
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.3.2</version>
        <configuration>
          <groups>
            <group>
              <title>Example 1 - Group Packages</title>
              <!--
              Include packages:
                com.mycompany.myapp
                com.mycompany.myapp.package1
              BUT exclude all subpackages
              -->
              <packages>com.mycompany.myapp:com.mycompany.myapp.package1</packages>
            </group>
            <group>
              <title>Example 2 - Group Packages</title>
              <!--
              Include packages:
                com.mycompany.myapp.package1.subpackage1
                com.mycompany.myapp.package1.subpackage2
                com.mycompany.myapp.package1.subpackage3
                com.mycompany.myapp.package1.util
              BUT exclude the root package:
                com.mycompany.myapp.package1
              -->
              <packages>com.mycompany.myapp.package1.*</packages>
            </group>
            <group>
              <title>Example 3 - Group Packages</title>
              <!--
              Include packages:
                com.mycompany.myapp.package1
                com.mycompany.myapp.package1.subpackage1
                com.mycompany.myapp.package1.subpackage2
                com.mycompany.myapp.package1.subpackage3
                com.mycompany.myapp.package1.util
              -->
              <packages>com.mycompany.myapp.package1*</packages>
            </group>
            <group>
              <title>Example 4 - Group Packages</title>
              <!--
              Include packages:
                com.mycompany.myapp.package1
                com.mycompany.myapp.package1.subpackage1
                com.mycompany.myapp.package1.subpackage2
                com.mycompany.myapp.package1.subpackage3
                com.mycompany.myapp.package1.util
                com.mycompany.myapp.package2
                com.mycompany.myapp.package2.subpackage4
                com.mycompany.myapp.package2.subpackage5
                com.mycompany.myapp.package2.util
              -->
              <packages>com.mycompany.myapp.package*</packages>
            </group>
            <group>
              <title>Example 5 - Group Packages</title>
              <!--
              Include packages:
                com.mycompany.myapp.package1.subpackage1
                com.mycompany.myapp.package1.subpackage2
                com.mycompany.myapp.package1.subpackage3
                com.mycompany.myapp.package1.util
                com.mycompany.myapp.package2.subpackage4
                com.mycompany.myapp.package2.subpackage5
                com.mycompany.myapp.package2.util
              BUT exclude the root packages:
                com.mycompany.myapp.package1
                com.mycompany.myapp.package2
              -->
              <packages>com.mycompany.myapp.package1.*:com.mycompany.myapp.package2.*</packages>
            </group>
            <group>
              <title>Example 6 - Group Packages</title>
              <!--
              Include nothing.
              The packages com.mycompany.myapp.package1.util and com.mycompany.myapp.package2.util
              will be in "Other Packages" group
              -->
              <packages>*.util.*</packages>
            </group>
          </groups>
          ...
        </configuration>
      </plugin>
      ...
    </plugins>
    ...
  </reporting> (or </build>)
  ...
</project>