При использовании Eclipse с FindBugs вы можете пометить ошибку как ошибку и удалить ее из списка ошибок?
FindBugs обнаружил потенциальную ошибку в моем коде. Но это не ошибка.
Можно ли отметить это событие как "не ошибка" И удалить его из списка ошибок?
Я достаточно четко документировал, почему для каждого случая это не ошибка.
Например. Класс реализует сопоставимый интерфейс. он имеет метод compareTo. Однако я не переопределил метод equals.
FindBugs не нравится это, так как в JavaDocs указано, что рекомендуется
(x.compareTo(y)==0) == (x.equals(y))
Хотя в моем случае указанное условие является и всегда будет истинным.
Ответы
Ответ 1
Вместо использования фильтров вы также можете использовать аннотацию SuppressWarnings. Вы должны использовать аннотацию из пакета findbugs, что означает, что вам нужен импорт или используйте полное имя. Это связано с тем, что кроме SuppressWarnings из JDK у него сохраняется "класс", что необходимо, потому что findbugs работает на скомпилированном байт-коде вместо исходный код.
Пример:
@edu.umd.cs.findbugs.annotations.SuppressWarnings(
value="EQ_COMPARETO_USE_OBJECT_EQUALS",
justification="because I know better")
Есть один угловой случай, когда вы, вероятно, не должны использовать аннотацию: если ваш код является кодом библиотеки, который заканчивается в банке, который может использоваться другими проектами и, вы все еще находитесь на Java5. Причиной этого является bug в JDK, который приводит к сбою javac, если аннотация отсутствует в пути к классам.
Ответ 2
Возможно, добавив filter в качестве параметра findbugs
Статьи соответствия могут соответствовать только информации, которая фактически содержится в экземплярах ошибок
<Match>
<Class name="com.foobar.MyClass" />
<Method name="myMethod" />
<Bug pattern="EQ_COMPARETO_USE_OBJECT_EQUALS" />
</Match>
Ответ 3
с другой стороны - если вы используете такой инструмент автоматического анализа кода, который выявляет потенциальные проблемы в соответствии с широко известными рекомендациями, возможно, вам следует придерживаться его рекомендаций? подумайте о людях, которые будут поддерживать код после вас.
что делать, если код изменяется после времени?