gpt4 book ai didi

annotations - Java 9 的 JSR-305 注释替换

转载 作者:行者123 更新时间:2023-12-03 10:40:37 28 4
gpt4 key购买 nike

到目前为止,我们一直在使用 Findbugs JSR-305 注释(com.google.code.findbugs:jsr305),包括工具支持(Sonar、Eclipse、Findbugs 等)在内的一切都运行良好。

然而,我们的理解是 Java 9 中的 Jigsaw 将破坏 JSR-305 注释(两个模块中的一个包是不允许的)。这在 JavaOne 2015 上得到了证实。Oracle 的理由是 JSR-305 从未发生过,JSR-250 将不得不认可这些注释。

我们正在寻找适用于 Java 8 和 Java 9 的 JSR-305 注释的替代品。如果历史可以作为指导,Java 9 GA 和 Java 8 EOL 之间的时间将相当短,我们希望修复我们的任何不兼容问题提前打码。理论上我们可以升级 JDK 的注解模块,但是在我们的工具链中这样做似乎需要做很多工作。

最佳答案

确实,两个模块通常不能在同一个模块中定义类型
包裹。直到最近,把 jsr305.jar在 a 的类路径上
JDK 9 构建将无效:该 JAR 文件在javax.annotation包,但该包是在平台的内置中定义的java.xml.ws.annotation模块,后者优先。

部分原因是jsr305.jar 的广泛使用,然而,也使
现有应用程序服务器更容易迁移到 JDK 9,我们更改了
排除注释模块的默认根模块集,其中
其他。把 jsr305.jar在 JDK 9 类路径上开箱即用
同时使用 JDK 9 和 JDK 10;详细信息可在
JEP 261 .它将继续
自注释模块以来的后续版本开箱即用,以及
与所有其他 Java EE 和 CORBA 模块一起,在 JDK 11 中被删除
根据 JEP 320 .

关于annotations - Java 9 的 JSR-305 注释替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37598775/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com