到目前为止,我们一直在使用Findbugs JSR-305注释(com.google.code.findbugs:jsr305),包括工具支持(Sonar,Eclipse,Findbugs,…)在内的一切工作都很正常.
但是我们的理解是,Java 9中的拼图会破坏JSR-305注释(不允许在两个模块中使用一个包).这在JavaOne 2015上得到证实.Oracle的推理是JSR-305从未发生过,JSR-250将不得不认可这些注释.
我们正在寻找适用于Java 8和Java 9的JSR-305注释的替代品.如果历史记录是任何指南,Java 9 GA和Java 8之间的时间将很短,我们希望解决我们的任何不兼容性提前提供代码.从理论上讲,我们可以升级JDK的注解模块,但是在我们的工具链中这样做就好像很多工作.