【发布时间】:2018-06-20 14:38:47
【问题描述】:
Java 9 deprecated six modules that contain Java EE APIs 很快就会成为 going to be removed:
-
java.activation 带有
javax.activation包 -
java.corba 带有
javax.activity、javax.rmi、javax.rmi.CORBA和org.omg.*包 -
java.transaction 带有
javax.transaction包 -
java.xml.bind 与所有
javax.xml.bind.*包 -
java.xml.ws 与
javax.jws、javax.jws.soap、javax.xml.soap和所有javax.xml.ws.*包 -
java.xml.ws.annotation 带有
javax.annotation包
哪些维护的第三方工件提供了这些 API?它们提供这些 API 的能力如何或它们必须提供哪些其他功能并不重要——重要的是,它们是这些模块/包的直接替代品吗?
为了更容易收集知识,我用我目前所知道的内容进行了回答,并将答案制作为社区 wiki。我希望人们将其扩展而不是编写自己的答案。
在您投票结束之前:
- 是的,已经有一些关于各个模块的问题,并且对这个问题的回答当然会重复该信息。但是 AFAIK 没有任何一点可以了解所有这些,我认为这很有价值。
- 要求图书馆推荐的问题通常被认为是题外话,因为“它们往往会吸引固执己见的答案和垃圾邮件”,但我认为这不适用于这里。一组有效的库被清楚地描述:它们必须实现一个特定的标准。除此之外,其他一切都不重要,因此我认为意见和垃圾邮件的风险不大。
【问题讨论】:
-
您可以在github.com/javaee 下找到所有被移动的人,并在JEP 320: Remove the Java EE and CORBA Modules 上找到一些细节的链接
-
另请参阅 InfoWorld 中的这篇 2018-05-14 文章,Java roadmap: Eclipse’s Jakarta EE enterprise Java takes shape,作者是 Paul Krill。副标题:Eclipse 基金会概述了组成新的云原生、微服务友好型企业 Java 工作的 39 个项目,以及 GlassFish 将如何发展
-
从 JDK 11 中它已被删除。如果您使用的是 jdk 9 或更高版本,最好直接添加依赖项,而不是使用“--add-modules java.xml.bind”之类的东西
标签: java jakarta-ee deprecated java-9 java-module