As anotações em jar305.jar devem ser preferidas às anotações semelhantes em annotation.jar para FindBugs?

No FindBugs distribuição,annotations.jar énã um subconjunto dejsr305.jar. No entanto, várias anotações parecem estar duplicadas (exatamente ou muito de perto). Devo preferir uma anotação emjsr305.jar se eu tiver uma escolha?

Observe que não estou interessado apenas em saber que seria "melhor" usar anotações dejsr305.jar simplesmente porque eles representam um padrão. Em vez disso, quero saber se a ferramenta FindBugs executará a mesma (ou melhor) análise, se eu preferir ojsr305.jar versão de uma anotação específica. Pode ser que algunsjsr305.jarnotações devem ser preferidas, mas outras nã

Estou usando o FindBugs 1.3.9, que éa versão mais recente até o momento em que escrevi. Nesta versão, vejo as seguintes opções (atualize estemes se houver outros):

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 (capitalização do NB)
edu.umd.cs.findbugs.annotations.Nullable → javax.annotation.Nullable
edu.umd.cs.findbugs.annotations.When → javax.annotation.meta.When

Também, todos os JCIP anotações são duplicados:

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

questionAnswers(1)

yourAnswerToTheQuestion