如何禁用构造函数的checkstyle JavaDoc验证?

时间:2015-08-31 19:30:18

标签: java javadoc checkstyle

如何禁用构造函数的checkstyle JavaDoc验证?

我看到http://checkstyle.sourceforge.net/config_javadoc.html#JavadocMethod明确说明它"检查方法或构造函数的#Javadoc"但是我需要排除构造函数并只留下方法。

2 个答案:

答案 0 :(得分:11)

要忽略构造函数,请从CTOR_DEF属性中删除tokens标记,例如:

<module name="JavadocMethod">
  <property name="tokens" value="METHOD_DEF,ANNOTATION_FIELD_DEF"/>
</module>

这是通过将tokens设置为除CTOR_DEF之外的所有其他允许令牌来实现的。遗憾的是,要使其工作,您需要知道要设置哪些令牌,此列表因Checkstyle版本而异,并不总是准确地反映在docs中。以上示例应提供合理的设置。

答案 1 :(得分:2)

在具有自定义类的构造函数中忽略javadocs ...

<module name="org.example.MyJavadocMethodCheck">
...
</module>

看起来像:

@SuppressWarnings("unused")
public class MyJavadocMethodCheck 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();
    }
}

我确定我在stackoverflow上找到了这个,但无法找到确切的链接。