我正在尝试在我的 eclipse java 项目中添加一个 suppresss.xml。我的 checkstyle-config.xml 位于 src/main/resources 中,而 suppresss.xml 位于同一目录中。我将此添加到配置文件中:
<module name="SuppressionFilter">
<property name="file" value="src/main/resources/suppressions.xml"/>
</module>
在 pom.xml 中,我有
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.10</version>
<configuration>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
<failsOnError>true</failsOnError>
<propertiesLocation>src/main/resources/checkstyle.build.properties</propertiesLocation>
<configLocation>src/main/resources/checkstyle-config.xml</configLocation>
<suppressionsLocation>src/main/resources/suppressions.xml</suppressionsLocation>
</configuration>
</plugin>
当我从命令行mvn verify
或通过 eclipse m2e 插件运行时,我收到此错误:
checkstyle 配置期间失败:无法初始化模块 SuppressionFilter - 无法将模块 SuppressionFilter 中的属性“文件”设置为“src/main/resources/suppressions.xml”:无法解析 src/main/resources/suppressions.xml - 无效文件或检查格式: InvocationTargetException -> [帮助 1]
我什至尝试将 checkstyle-config.xml 中的路径更改为${config_log}
或${basedir}
但到目前为止没有运气。
对此的任何帮助都是不言而喻的。
更新:我觉得问题可能不在于文件位置,而在于 suppresss.xml 文件本身。这是我的suppresses.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 checks="JavadocPackage" files="src/test/java/**"/>
</suppressions>