Überprüfen Sie die Verwendung des supressionCommentFilter unter http://checkstyle.sourceforge.net/config_filters.html#SuppressionCommentFilter . Sie müssen das Modul zu Ihrer checkstyle.xml hinzufügen
<module name="SuppressionCommentFilter"/>
und es ist konfigurierbar. Auf diese Weise können Sie Ihrem Code Kommentare hinzufügen, um den Prüfstil (auf verschiedenen Ebenen) zu deaktivieren und dann mithilfe von Kommentaren in Ihrem Code wieder einzuschalten. Z.B
//CHECKSTYLE:OFF
public void someMethod(String arg1, String arg2, String arg3, String arg4) {
//CHECKSTYLE:ON
Oder noch besser, verwenden Sie diese optimierte Version:
<module name="SuppressionCommentFilter">
<property name="offCommentFormat" value="CHECKSTYLE.OFF\: ([\w\|]+)"/>
<property name="onCommentFormat" value="CHECKSTYLE.ON\: ([\w\|]+)"/>
<property name="checkFormat" value="$1"/>
</module>
Hiermit können Sie bestimmte Überprüfungen für bestimmte Codezeilen deaktivieren:
//CHECKSTYLE.OFF: IllegalCatch - Much more readable than catching 7 exceptions
catch (Exception e)
//CHECKSTYLE.ON: IllegalCatch
* Hinweis: Sie müssen außerdem Folgendes hinzufügen FileContentsHolder
:
<module name="FileContentsHolder"/>
Siehe auch
<module name="SuppressionFilter">
<property name="file" value="docs/suppressions.xml"/>
</module>
Klicken Sie im SuppressionFilter
Abschnitt auf derselben Seite auf, in dem Sie einzelne Überprüfungen für musterangepasste Ressourcen deaktivieren können.
Also, wenn Sie in Ihrer checkstyle.xml haben:
<module name="ParameterNumber">
<property name="id" value="maxParameterNumber"/>
<property name="max" value="3"/>
<property name="tokens" value="METHOD_DEF"/>
</module>
Sie können es in Ihrer Unterdrückungs-XML-Datei deaktivieren mit:
<suppress id="maxParameterNumber" files="YourCode.java"/>
Eine andere Methode, die jetzt in Checkstyle 5.7 verfügbar ist, besteht darin, Verstöße über die @SuppressWarnings
Java-Annotation zu unterdrücken . Dazu müssen Sie Ihrer Konfigurationsdatei zwei neue Module ( SuppressWarningsFilter
und SuppressWarningsHolder
) hinzufügen :
<module name="Checker">
...
<module name="SuppressWarningsFilter" />
<module name="TreeWalker">
...
<module name="SuppressWarningsHolder" />
</module>
</module>
Dann können Sie in Ihrem Code Folgendes tun:
@SuppressWarnings("checkstyle:methodlength")
public void someLongMethod() throws Exception {
oder für mehrere Unterdrückungen:
@SuppressWarnings({"checkstyle:executablestatementcount", "checkstyle:methodlength"})
public void someLongMethod() throws Exception {
NB: Das checkstyle:
Präfix " " ist optional (wird jedoch empfohlen). Gemäß den Dokumenten muss der Parametername in Kleinbuchstaben angegeben werden, aber die Praxis zeigt, dass jeder Fall funktioniert.