避免在多模块 Maven 项目中为单个模块暂存和部署 Javadoc

问题描述

我有一个多模块 Maven 项目。我已经设置了父 POM 来生成聚合的 Javadoc,比如

<>

这具有在项目级别和单个模块聚合的暂存和部署 Javadoc 的效果删除最后一个 ... <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>3.3.0</version> <reportSets> <reportSet> <id>aggregate</id> <inherited>false</inherited> <reports> <report>aggregate</report> <report>test-aggregate</report> </reports> </reportSet> <reportSet> <id>default</id> <reports> <report>javadoc</report> <report>test-javadoc</report> </reports> </reportSet> </reportSets> ... 没有任何区别。 因为所有信息都已经存在于聚合的 Javadoc 中,所以我不希望它在各个模块下。我如何避免这种情况?

解决方法

结果很简单,您将第二个 reportSet 定义为具有一组空报告,例如

...
  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.3.0</version>
        <reportSets>
          <reportSet>
            <id>aggregate</id>
            <inherited>false</inherited>        
            <reports>
              <report>aggregate</report>
              <report>test-aggregate</report>
            </reports>
          </reportSet>
          <reportSet>
            <id>default</id>
            <reports>
            </reports>
          </reportSet>
        </reportSets>
...
´´´