如何禁用类的checkstyle JavaDoc验证?

时间:2016-08-26 03:54:01

标签: java checkstyle

我在我的java项目中使用checkstyle 2.17。我想忽略所有类的javadoc,只想强制接口的javadoc。有什么办法可以在我的xml配置文件中执行此操作。现在它看起来像这样:

<!-- Javadoc for interface must be present/valid. The same for classes is optional-->
<module name="JavadocType">
        <property name="tokens" value="INTERFACE_DEF"/>
</module>

它适用于接口但在没有为类指定javadoc时会出错。

2 个答案:

答案 0 :(得分:0)

您的配置正确无误。 Checkstyle甚至有a test,确认如果tokens设置为INTERFACE_DEF,则不会报告任何违规行为。

答案 1 :(得分:0)

我还没有对其进行测试,但尝试在您的XML中覆盖acceptableTokens,而不是tokens

这是我们阻止在类构造函数上强制执行javadoc规则的方法。不要忘记从*_checks.xml文件中引用新的自定义类。

public class JavadocMethodCheck extends com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocMethodCheck {

    @Override
    public int[] getAcceptableTokens() {
        return Arrays.stream(super.getAcceptableTokens())
            .filter(t -> t != TokenTypes.CTOR_DEF) // Don't enforce javadoc comments on constructors
            .toArray();
    }
}