将maven JavaDoc与合理的doclint参数一起使用

cru*_*tex 9 java javadoc maven maven-javadoc-plugin

关于如何在Java 8中关闭神圣的JavaDoc lint功能有很多信息.信不信由你,今天我决定使用这个功能并修复我的JavaDocs.然而,在其标准配置中,它抱怨每一个可能缺失@param@return.从我在Java 8 javadoc技术文档的JavaDoc文档中看到的,我的选择是-Xdoclint:all,-missing.这应该包括所有检查,但不要对错过的文件机会提出投诉.maven配置如下所示:

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>2.10.4</version>
        <configuration>
          <additionalparam>-Xdoclint:all,-missing</additionalparam>
          <aggregate>false</aggregate>
        </configuration>
        <reportSets>
          <reportSet>
            <id>default</id>
            <reports>
              <report>javadoc</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
    </plugins>
  </reporting>
Run Code Online (Sandbox Code Playgroud)

但是当mvn site我运行时,我得到错误:

[ERROR] Exit code: 1 - javadoc: error - invalid flag: -missing
Run Code Online (Sandbox Code Playgroud)

我怀疑maven中的参数处理是个问题,但引用并没有帮助.

任何想法如何使用这个?以合理的方式检查JavaDoc的任何其他良好实践?

has*_*nae 6

正确的语法是:

-Xdoclint:all -Xdoclint:-missing 
Run Code Online (Sandbox Code Playgroud)


FrV*_*aBe 5

您期望使用的语法 ( -Xdoclint:all,-missing) 是正确的。它将与本机命令行 javadoc 工具一起正常工作。不幸的是,如果使用逗号,Maven JavaDoc 插件似乎会将附加参数拆分为多个参数。此错误记录在MJAVADOC-368中。

为了避免您的问题,请使用 @hasnae 答案 ( ) 中描述的更详细的语法-Xdoclint:all -Xdoclint:-missing