eclipse Java プロジェクトにsuppressions.xml を追加しようとしています。私のcheckstyle-config.xmlはsrc/main/resourcesにあり、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>
mvn verify
コマンドラインまたは eclipse m2e プラグインから実行すると、次のエラーが発生します。
checkstyle 構成中に失敗しました: モジュール SuppressionFilter を初期化できません - モジュール SuppressionFilter のプロパティ 'file' を 'src/main/resources/suppressions.xml' に設定できません: src/main/resources/suppressions.xml を解析できません - 無効なファイルまたはチェック形式: InvocationTargetException -> [ヘルプ 1]
checkstyle-config.xml のパスを${config_log}
orに変更しようとさえしまし${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>