增加使用 Ant 编译时 javadoc 警告的最大数量

Increase the maximum number of javadoc warnings when compiling with Ant

我最近将我的开发环境从 Java 7 升级到 Java 8,现在发现了大量以前未检测到的 javadoc 问题。

默认情况下,Ant(通过 Eclipse Mars 调用)将其警告(我假设错误)限制为 100:

是否有任何参数强制 Ant 显示 all javadoc 警告而不是限制为 100?

我试图通过 compilerarg 元素使用 -Xmaxwarns 1000 参数,但 Eclipse Mars (Ant 1.9.4) 中的当前 Ant 版本似乎 javadoc task does not support the compilerarg element (it is only supported in the javac task):

<!-- Generate the API documentation. -->
<target name="javadoc" depends="clean" description="Generate the API documentation.">

    <!-- Create the build directory structure used by javadoc. -->
    <mkdir dir="${build.folder}" />
    <mkdir dir="${docs.folder}" />

    <!-- Run javadoc. -->

    <javadoc destdir="${docs.folder}/api" author="true" version="true" use="true" windowtitle="${documentation.title}">

        <compilerarg value="-Xmaxerrs 1000 -Xmaxwarns 1000" />

        <classpath>

        ...

Java 8 javadoc 是否支持这些参数(在 Java 7 b100 中添加了支持):

C:\>javadoc -X
  -Xmaxerrs <number>               Set the maximum number of errors to print
  -Xmaxwarns <number>              Set the maximum number of warnings to print

Provided by standard doclet:
  -Xdocrootparent <url>            Replaces all appearances of @docRoot followed

                                   by /.. in doc comments with <url>
  -Xdoclint                        Enable recommended checks for problems in javadoc comments
  -Xdoclint:(all|none|[-]<group>)
        Enable or disable specific checks for problems in javadoc comments,
        where <group> is one of accessibility, html, missing, reference, or syntax.

These options are non-standard and subject to change without notice.

结论:看来Ant javadoc任务是这里的限制因素,如果它支持compilerarg标志,就可以调整错误和警告的限制。

如您所述,-Xmaxwarns 会影响 javadoc 程序输出的警告数量。

-Xmaxwarns 可以传递给带有嵌套 <arg> 元素的 javadoc 程序:

<javadoc ...>
    <arg value="-Xmaxwarns"/>
    <arg value="200"/>
</javadoc>

在我自己的测试用例中,我能够将报告的警告增加到 100 以上:

[javadoc] Generating Javadoc
...
[javadoc] 112 warnings