У меня есть ошибка, о которой сообщает FindBugs, но я знаю лучше:) см. следующий пример:
public class MyClass extends BaseClass {
@CustomInjection
private Object someField;
public MyClass() {
super();
someField.someMethod(); // Bug is here because FindsBugs thinks this is always null
}
}
В моем конструкторе BaseClass я добавляю все поля с аннотацией @CustomInjection с правильным объектом, поэтому мои аннотированные поля в моем случае не равны нулю.
Я не хочу подавлять предупреждение с помощью "suppresswarnings", потому что это значительно загромождает код. Я предпочитаю, чтобы фильтр, подобный findbugs, объяснял здесь, но я не могу понять, как фильтровать ошибки для полей, аннотированных определенным интерфейсом. Я также не хочу фильтровать все предупреждения об ошибках в null. Я думаю, что это должно быть что-то вроде:
<Match>
<Bug code="UR">
<Field annotation="CustomInjection">
</Match>