JSR-308的JSR-308扩展?

时间:2015-05-05 13:13:35

标签: java annotations

Eclipse的null分析现在支持JSR-308,即您现在可以将@Nonull等放在泛型类型参数上。

但是,广泛使用的com.google.code.findbugs:jsr305:3.0.0包没有JSR-308特定目标。是否有任何面向JSR-308的版本或扩展JSR-305 null注释的方法?

2 个答案:

答案 0 :(得分:2)

看来,至少在Eclipse中,注释的语义发生了变化,因此针对这两种用法的注释可能会很危险。

答案 1 :(得分:1)

JSR 305很久以前就被放弃了(关于其状态的一个question在2010年被问到其邮件列表,但从未回答过)。您不应期望JSR 305能够发展为利用Java的新功能,例如类型注释(JSR 308)。

另一方面,您可以使用许多注释定义来代替JSR 305版本。例如,Checker Framework手册列出了您可以选择的11 variants of the @NonNull annotation

您最好选择定义的注释,以便可以在类型注释位置中使用它们。 (或者,您可以创建一个非标准版本的JSR 305注释,将TYPE_USE添加到@Target元注释中。)