Maven 2プロジェクトがあり、一部のクラスのみが分析されるようにCheckstyleレポートプラグインを構成したいと思います。私はmaven.checkstyle.excludes
プロパティを見つけましたが、これをコマンドラインパラメータとして渡しても(-D=maven.checkstyle.excludes=...
を使用して)機能しません。プラグインのドキュメントページで何も見つかりません。理想的には、これを私のPOMの<configuration>
セクションで設定できるようにしたいと思います。
この質問がMaven 2に関するものである場合、プロパティは excludes
であり、Antパターンのコンマ区切りのリストを取ります。したがって、コマンドラインでこれを渡すか、
-Dexcludes=**/generated/**/*
または、プラグイン構成で設定します。
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<configuration>
<excludes>**/generated/**/*</excludes>
</configuration>
</plugin>
別のオプションは 抑制フィルター を使用することです。
たとえば、SuppressionCommentFilter
を使用してCHECKSTYLE:OFF
を含むコメントとCHECKSTYLE:ON
を含むコメントの間の監査イベントを抑制できます(これらのコメントをクラスに追加するだけです)またはチェックしたくないコードの一部)。
私のように、checkstyleからgeneratedソースを除外する方法を探してここに到着した場合は、次のようにします。
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.15</version>
<configuration>
<sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
</configuration>
</plugin>
デフォルトでは、checkstyleプラグインの checkstyle:checkstyle
目標は、生成されたソースディレクトリを含む${project.compileSourceRoots}
を使用します。
${project.build.sourceDirectory}
に変更すると、生成されたソースディレクトリではなく、ソースディレクトリのみが使用されます。
<sourceDirectory>
は非推奨ですが、代わりの<sourceDirectories>
は機能しないようです。
さらに、multiple独立フォルダーを除外する場合は、次のように複数の独立パスをコンマで区切って追加できます
<excludes>org/log4j/*,com/acme/**/*,com/companyb/*</excludes>