如何在checkstyle配置中添加异常

时间:2017-12-28 00:17:33

标签: java checkstyle

我有一个使用Gradle构建的Java项目,并使用checkstyle和默认的Google checkstyle.xml(来自项目网站)。

其中,它为公共方法强制执行Javadoc。我希望将此规则保留为普通代码,但我不想为我的测试编写javadoc。

如何为此规则添加例外,以便checkstyle忽略它以获取测试文件?

1 个答案:

答案 0 :(得分:1)

这可以分两步完成:

  1. 通过添加SuppressionFilter模块在​​checkstyle.xml中指定抑制文件。更具体地说,在" Checker"中添加以下代码。模块:

    <module name="SuppressionFilter">
        <property name="file" value="config/checkstyle/suppressions.xml"/>
        <property name="optional" value="false"/>
    </module>
    

    其中&#34; config / checkstyle / suppressions.xml&#34;是来自项目根目录的抑制文件的路径。

  2. 按如下方式创建suppressions.xml

    <?xml version="1.0"?>
    
    <!DOCTYPE suppressions PUBLIC
        "-//Puppy Crawl//DTD Suppressions 1.1//EN"
        "http://checkstyle.sourceforge.net/dtds/suppressions_1_1.dtd">
    
    <suppressions>
        <suppress checks="JavadocMethod"
            files=".*Test.java"/>
    </suppressions>
    

    告诉Checker不对名称以JavadocMethod结尾的文件应用*Test.java规则。

  3. 注意:如果未找到抑制文件或无效,您可能会遇到如下错误:

      

    无法创建根模块:config {/path/to/config/checkstyle/checkstyle.xml},classpath {null}。

    在我的情况下,使用$ gradle build --stacktrace运行构建证明对于调试它非常有用。