チェックスタイルのルールを保存したxmlファイルを含むjarファイルをmaven依存関係として持つプロジェクトがあります。この構成を使用するだけで問題ないと思いました。
<configLocation>mycheckstyle.xml</configLocation>
私の理解では、ファイルはクラスパスで検索する必要があり、私のjarファイルはMavenの依存関係であるため、見つける必要がありますが、リソースが見つからないという例外が発生します。
助言がありますか?
チェックスタイルのルールを保存したxmlファイルを含むjarファイルをmaven依存関係として持つプロジェクトがあります。この構成を使用するだけで問題ないと思いました。
<configLocation>mycheckstyle.xml</configLocation>
私の理解では、ファイルはクラスパスで検索する必要があり、私のjarファイルはMavenの依存関係であるため、見つける必要がありますが、リソースが見つからないという例外が発生します。
助言がありますか?
プラグイン構成に依存関係セクションを追加してみてください。
例えば、
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<dependencies>
<dependency>
<groupId>com.example.whizbang</groupId>
<artifactId>build-tools</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</plugin>
詳細については、 Maven Checkstyle プラグイン - マルチモジュール構成を参照してください。
私は、checkstyle プラグインを指定し、そのリソース フォルダーに適切な mycheckstyle.xml を持つ親を持っています。Maven アセンブリ プラグインを使用して、親のリソース フォルダーの jar を作成し、その jar を子の依存関係として定義します。そのため、子が checkstyle プラグイン + 親からの構成を継承すると、mycheckstyle.xml を見つけることができるはずです。checkstyle プラグイン ページの指示に従いましたが、機能しませんでした。
Checkstyle プラグイン ページで説明されているように、
configLocation :
使用する XML 構成の場所を指定します。
可能な値は、ファイルシステム パス、URL、またはクラスパス リソースです。
私は自分のプロジェクトでそれをしたことはありません...
checkstyle プラグインの起動時に、XML ファイルを含む JAR がクラスパスにあることを確認してください。