помечены как

dBugs распределение, являетсяannotations.jarне подмножество, Тем не менее, несколько аннотаций, кажется, дублируются (либо точно, либо очень близко). Должен ли я предпочесть аннотацию вjsr305.jar если у меня есть выбор?jsr305.jarОбратите внимание, что мне не просто интересно знать, что было бы «лучше» использовать аннотации из

 просто потому, что они представляют собой стандарт. Скорее, я хочу знать, будет ли инструмент FindBugs выполнять тот же (или лучший) анализ, если я предпочитаюjsr305.jar версия конкретной аннотации. Это может быть случай, когда некоторыеjsr305.jar аннотации должны быть предпочтительными, но другие не должны.jsr305.jarЯ использую FindBugs 1.3.9, которая

самая последняя версия на момент написания статьи. В этой версии я вижу следующие варианты (пожалуйста, обновите этуТаблица если есть другие)edu.umd.cs.findbugs.annotations.CheckForNull → javax.annotation.CheckForNull

edu.umd.cs.findbugs.annotations.CheckReturnValue → javax.annotation.CheckReturnValue
edu.umd.cs.findbugs.annotations.NonNull → javax.annotation.Nonnull (прописная буква)
edu.umd.cs.findbugs.annotations.Nullable → javax.annotation.Nullable
edu.umd.cs.findbugs.annotations.When → javax.annotation.meta.When
Кроме того, все

JCIPаннотации  дублируются:net.jcip.annotations.GuardedBy → javax.annotation.concurrent.GuardedBy

net.jcip.annotations.Immutable → javax.annotation.concurrent.Immutable
net.jcip.annotations.NotThreadSafe → javax.annotation.concurrent.NotThreadSafe
net.jcip.annotations.ThreadSafe → javax.annotation.concurrent.ThreadSafe
Извините, я не понял суть вашего вопроса. Однако я преобразовал все свои проекты, используя собственные аннотации findbugs, в стандартизированные и не заметил никаких изменений. Просто мои личные наблюдения. Если я правильно помню, findbugs использует тот же код для проверки. Я посмотрю на код позже. Тем временем я проголосовал за удаление своего ответа, поскольку он не отвечает на ваш вопрос :)

Ответы на вопрос(1)

Ваш ответ на вопрос