そこで、findbugs アノテーションを使用して、正常なコードと見なされる警告を抑制したいと思います。
Annotation.jar と jsr305.jar を本番ランタイムにデプロイする必要がありますか? それとも、Eclipse プロジェクトと UNIX ビルド環境のクラスパスにこれらの jar のみが必要ですか?
そこで、findbugs アノテーションを使用して、正常なコードと見なされる警告を抑制したいと思います。
Annotation.jar と jsr305.jar を本番ランタイムにデプロイする必要がありますか? それとも、Eclipse プロジェクトと UNIX ビルド環境のクラスパスにこれらの jar のみが必要ですか?
注釈にはさまざまな保持ポリシーがあります。
ロジックは、SOURCE 保持アノテーションが実行時に必要ないこと、CLASSは必要ないこと、および RUNTIMEが利用可能でなければならないことを示します。
JSR 305 アノテーションをざっと見てみると、それらが RUNTIME 保持ポリシー ( example ) を使用していることがわかります。これは、これらの jar が実行時にクラスをロードしてアノテーション コントラクトを満たすために実際に必要であることを示しています。
しかし、私は実際にこれを自分でテストしていません。
私の関連する質問によると、実行時にこれらの注釈が存在しなくても、通常は問題が発生することはありません@Retention(RUNTIME)
。