Как подавить предупреждения в CheckStyle?

Я использую плагин CheckStyle для Eclipse.

Хорошо, что я обнаружил, что не намеревался в 99% случаев, но в 1% случаев я действительно намеренно сознательно нарушал правило, я бы хотел, чтобы CheckStyle знал, что он не должен касаться флагов предупреждение.

Пример: Отсутствует правило комментариев Javadoc. Большую часть времени я хочу, чтобы Javadoc комментировал мои методы. Однако такой метод, как:

public boolean isValid() {
  return valid;
}

возможно, обойтись без него.

Есть ли что-то вроде аннотации @SuppressWarnings, которая может использоваться для обозначения определенного правила правила CheckStyle как приемлемого? Может быть, какой-то специально отформатированный комментарий? Я не хочу отключать правило, я просто хочу игнорировать определенное нарушение.

(я понимаю, что в этом случае я мог бы просто написать комментарий Javadoc, но в других случаях исправление нарушения правила не так просто).

Ответы

Ответ 1

Кажется довольно утомительным, но для его игнорирования должна быть явная конфигурация XML. Вероятно, вы можете найти графический интерфейс для этого, используя плагин Checkstyle для Eclipse или Netbeans. Пример, который я нашел, находится на странице Checkstyle .

<?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="JavadocStyleCheck"
              files="AbstractComplexityCheck.java"
              lines="82,108-122"/>
    <suppress checks="MagicNumberCheck"
              files="JavadocStyleCheck.java"
              lines="221"/>
</suppressions>

Ответ 2

PhiLho прав - SuppressWithNearbyCommentFilter или SuppressionCommentFilter может помочь. У меня есть параметр SuppressionCommentFilter и добавление комментариев "CHECKSTYLE: OFF" и "CHECKSTYLE: ON" временно отключит стиль проверки.

Ответ 3

Синтез указал на страницу конфигурации Checkstyle. Снимая его, я нашел SuppressWithNearbyCommentFilter, который кажется многообещающим, если я не пойму его цели...