Первоначальный подход FindBugs включает файлы конфигурации XML, известные как filters . Это действительно менее удобно, чем решение PMD, но FindBugs работает с байт-кодом, а не с исходным кодом, поэтому комментарии, очевидно, не вариант. Пример:
<Match>
<Class name="com.mycompany.Foo" />
<Method name="bar" />
<Bug pattern="DLS_DEAD_STORE_OF_CLASS_LITERAL" />
</Match>
Однако, чтобы решить эту проблему, FindBugs позже представил другое решение на основе аннотаций (см. SuppressFBWarnings
), которое можно использовать на уровне класса или на уровне метода (подробнее удобнее чем XML на мой взгляд). Пример (возможно, не самый лучший, но, ну, это всего лишь пример):
@edu.umd.cs.findbugs.annotations.SuppressFBWarnings(
value="HE_EQUALS_USE_HASHCODE",
justification="I know what I'm doing")
Обратите внимание, что начиная с FindBugs 3.0.0 SuppressWarnings
устарела в пользу @SuppressFBWarnings
из-за конфликта имен с Java SuppressWarnings
.