http://checkstyle.sourceforge.net/config_filters.html#SuppressionCommentFilterで supressionCommentFilterの使用を確認してください。モジュールをcheckstyle.xmlに追加する必要があります
<module name="SuppressionCommentFilter"/>
そしてそれは構成可能です。したがって、コードにコメントを追加して、checkstyleを(さまざまなレベルで)オフにしてから、コード内のコメントを使用して再びオンにすることができます。例えば
//CHECKSTYLE:OFF
public void someMethod(String arg1, String arg2, String arg3, String arg4) {
//CHECKSTYLE:ON
またはさらに良いことに、このより微調整されたバージョンを使用します。
<module name="SuppressionCommentFilter">
<property name="offCommentFormat" value="CHECKSTYLE.OFF\: ([\w\|]+)"/>
<property name="onCommentFormat" value="CHECKSTYLE.ON\: ([\w\|]+)"/>
<property name="checkFormat" value="$1"/>
</module>
これにより、特定のコード行の特定のチェックをオフにすることができます。
//CHECKSTYLE.OFF: IllegalCatch - Much more readable than catching 7 exceptions
catch (Exception e)
//CHECKSTYLE.ON: IllegalCatch
*注意:以下も追加する必要がありますFileContentsHolder
:
<module name="FileContentsHolder"/>
こちらもご覧ください
<module name="SuppressionFilter">
<property name="file" value="docs/suppressions.xml"/>
</module>
SuppressionFilter
同じページのセクションの下で、パターンに一致するリソースの個別のチェックをオフにできます。
したがって、checkstyle.xml内にある場合:
<module name="ParameterNumber">
<property name="id" value="maxParameterNumber"/>
<property name="max" value="3"/>
<property name="tokens" value="METHOD_DEF"/>
</module>
次のコマンドを使用して、抑制xmlファイルでオフにすることができます。
<suppress id="maxParameterNumber" files="YourCode.java"/>
Checkstyle 5.7で現在利用可能なもう1つの方法は、@SuppressWarnings
javaアノテーションを介して違反を抑制することです。これを行うには、構成ファイルに2つの新しいモジュール(SuppressWarningsFilter
およびSuppressWarningsHolder
)を追加する必要があります。
<module name="Checker">
...
<module name="SuppressWarningsFilter" />
<module name="TreeWalker">
...
<module name="SuppressWarningsHolder" />
</module>
</module>
次に、コード内で次のことを実行できます。
@SuppressWarnings("checkstyle:methodlength")
public void someLongMethod() throws Exception {
または、複数の抑制の場合:
@SuppressWarnings({"checkstyle:executablestatementcount", "checkstyle:methodlength"})
public void someLongMethod() throws Exception {
注意: " checkstyle:
"プレフィックスはオプションです(ただし推奨されます)。ドキュメントによると、パラメータ名はすべて小文字にする必要がありますが、慣例では大文字と小文字が機能することが示されています。