JSR 305のステータスは何ですか?


101

JSR305対JSR308(Java Type Anotations)の質問を見ました-どちらが標準になりますか?JSR 308JSR 305の違いを理解しています。

現時点では、308はJava 7用に予定されており、305は予定されていないことも理解しており、305の全体的なステータスに興味があります。

具体的には、私はいくつかのプロジェクトでGoogleコレクションJSR-305を使用しており(Guiceのベストプラクティスの1つが提唱しているのと同様の方法で)、より「将来の方向性」に配慮したアプローチがあるかどうか疑問に思っていました代わりに。JSR-305グループについても質問する予定ですが、そのグループはあまり活動がなく、ここに誰か他に情報があるのではないかと思っていました。


1
私はあなたがケビンを去った答えを受け入れますが、それらがJava 7になるかどうかを明確に述べている記事の中で場所を見つけることができませんか?(そして、実際に質問を投稿する前に、その情報を簡単に確認しました。)(回答に示されているように)それら含まれるという特定の言及をそこで見ましたか?よろしくお願いします。
チャーリーコリンズ

1
このくらいの時間、そして何が起こっているのかを正確に把握するための他のいくつかの努力の後、私は最良の答え、唯一の答え、「答え」の区別を授与します。;)
チャーリーコリンズ


回答:


67

この回答で説明されているように、JSR-305@NonNullなどの新しい注釈を提案し、JSR-308は一般的な宣言などの新しい場所で注釈を許可することを提案しています。

JSR 308ページの引用:

…このドキュメントは注釈を提案するものではなく、Javaコードのどこに現れるかを指定するだけです。

JSR 308(新しい場所の注釈)は、Java 8JEP 104に含まれています。

2017年以降、JSR 305(新しい注釈)は引き続き「休止」の公式ステータスを保持しています。質問グーグルグループで、それの状態については、2010年以来未解決となっています。

ここには、グアバを含む多くのプロジェクトで使用されるJSR-305アノテーションのリファレンス実装があります。mavenでは、これをpomに追加することにより、JSR-305リファレンス実装を使用できます。

<dependency>
    <groupId>com.google.code.findbugs</groupId>
    <artifactId>jsr305</artifactId>
    <version>3.0.0</version>
</dependency>

2
Maven Centralのcom.google.code.findbugs:jsr305へのリンク(最新バージョンは3.0.0です)
Paolo Fulgoni 14

findbugs-maven-pluginからと同じバージョンを使用して、org.codehaus.mojo両方を同期できます。
Christophe Roussy、2015年

2
Java 9は完全な機能ですがリリースされていません。JSR-305が含まれていないようです。同様のアノテーションを追加した別のJSRはありましたか?
dlamblin



1

Alex Millers Java 7ブログによると、JSR-308(および305)はJava 7に入る予定です。おそらく、彼がここに表示され、詳細情報を提供するでしょう。


51
どちらもJava 7にはなりませんでした
Miles

7
JSR308はJava 8になりますが(2013年3月)JSR 305はまだ休止しています。
モーリスナフタリン2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.