我想添加一個suppressions.xml到我的eclipse java項目。我的checkstyle-config.xml位於src/main/resources中,suppressions.xml位於同一個目錄中。我已將此添加到配置文件:maven-checkstyle-plugin:無法解析suppressions.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>
當我通過命令行或通過Eclipse的插件M2E運行mvn verify
,我得到這個錯誤:
Failed during checkstyle configuration: cannot initialize module SuppressionFilter - Cannot set property 'file' in module SuppressionFilter to 'src/main/resources/suppressions.xml': unable to parse src/main/resources/suppressions.xml - invalid files or checks format: InvocationTargetException -> [Help 1]
我甚至試圖在的CheckStyle-config.xml中的路徑更改爲${config_log}
或${basedir}
,但沒有呂克到目前爲止。
對此的任何幫助將是可觀的。
更新:我覺得問題可能不在於文件位置,而是與suppressions.xml文件本身。這裏是我的suppressions.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>
文檔說如果需要,文件可以在類路徑中指定。因爲src/main/resources具有以類路徑根結尾的文件,所以請單獨嘗試'supressions.xml'。這就是配置文件中的條目。我不確定pom中的條目是否相同。我不知道爲什麼你會在這兩個地方需要它。 –
我總是將我的checkstyle.xml配置文件放在與pom.xml文件相同的文件夾中。也許如果你把它和這個suppressions.xml文件放在那裏,並把它們的名字放在pom中沒有路徑,它可能會起作用。 –
試過,並沒有工作。我將它從pom.xml中刪除,並將其更改爲checkstyle-config.xml中的「suppressions.xml」,但無效。在這種情況下無法找到文件錯誤。 – vikas