我在我的java项目中使用Maven 3和Checkstyle 2.9.1 ,并且我有一个常见的 checkstyle 配置,我们也在其他几个项目中使用。为了避免将该配置文件复制和编辑到我自己的项目中,我使用抑制文件来禁用某些包(生成的代码)中的所有检查。
现在我想禁止所有文件中的特定规则。
这是我的抑制文件:
<?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 files="my[\\/]generated[\\/]code[\\/]package" checks="."/>
<suppress files=".*\\.java$" checks="IndentationCheck"/>
<suppress files=".*\\.java$" checks="LineLengthCheck"/>
<suppress files=".*\\.java$" checks="ExplicitInitializationCheck"/>
<suppress files=".*\\.java$" checks="MemberNameCheck"/>
</suppressions>
这是我的POM:
...
<build>
...
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<configLocation>${checkstyle.ruleset}</configLocation>
<suppressionsLocation>${checkstyle.suppressions}</suppressionsLocation>
</configuration>
</plugin>
</plugins>
</build>
然后我打电话
mvn checkstyle:checkstyle
生成报告,但抑制的警告仍然存在。
我在这里做错了什么?