我想让checkstyle忽略测试中@throws
子句的javadoc缺失,但是在非测试中抱怨。
因为抑制文件不支持JavadocMethod的子属性,所以我不得不完全忽略测试中的javadoc,或者根本不忽略,没有粒度。这也是this other question.
的结论以下是我现在正在尝试的内容:我可以在checkstyle配置中使用两个具有不同id的JavadocMethod模块(例如test
和notest
),并选择性地压缩test
模块非测试,反之亦然?
我无法让这个工作,我开始认为我不能在checkstyle中有一个重复的模块。任何见解?
以下是有关配置xml中的JavadocMethod的规则:
<module name="JavadocMethod">
<property name="id" value="nontest"/>
</module>
<module name="JavadocMethod">
<property name="id" value="test"/>
<property name="allowMissingThrowsTags" value="true"/>
</module>
这是我的抑制文件:
<suppressions>
<!-- Supress non-test-doc on tests -->
<suppress id="nontestdoc" files=".*(?:Test|IT).*java" />
<suppress id="testdoc" files=".*(?!Test|IT).*java" />
</suppressions>
谢谢!
答案 0 :(得分:0)
你可以在checkstyle中使用重复的模块。
分别使用Indentation
模块与tab 2
和tab 4
进行了尝试。并使用suppression.xml
,如下面的
<?xml version="1.0"?>
<!DOCTYPE suppressions PUBLIC
"-//Puppy Crawl//DTD Suppressions 1.1//EN"
"http://www.puppycrawl.com/dtds/suppressions_1_1.dtd">
<suppressions>
<suppress id="IndnA" files=".*\.java"/>
<suppress id="IndnB" files=".*\.java"/>
</suppressions>
什么是正则表达式.*(?:Test|IT).*java
和.*(?!Test|IT).*java
?你为什么使用LookAhead?
请检查文件.*\.java
是否有效。