新闻阅读Eclipse and Oracle agreed that no modification to the javax
package namespace is permitted within Jakarta EE component specifications后的几天
我在问:愿意将Java EE相关项目迁移到Jakarta EE 9及更高版本的团队会有什么后果?
我知道现在提这个问题还为时过早,因为Eclipse尚未就如何处理这种情况做出最终决定,there are recently two different proposals in discussion:
建议1:Jakarta EE 9的大爆炸,Jakarta EE 10的新功能 该提案的核心是将API源从
javax
命名空间一次性迁移到jakarta
命名空间,其主要目标是不延长行业成本和与过渡相关的痛苦。>建议2:Jakarta EE 9及更高版本中的增量更改 将API源从
javax
逐步发展到jakarta
命名空间,视需要而定。最活跃的规范将立即在Jakarta EE 9中移动。从版本10开始及以后的每个Jakarta EE版本都可能涉及从javax
到jakarta
的命名空间过渡。
考虑建议1 ,听起来项目团队一方面必须迁移所有javax
API类并将其导入到jakarta
包中
并等待他们与Java EE相关的依赖关系。由于javax
软件包非常庞大,因此可能存在很多依赖性:Here is a full list of javax.* namespace involved in JRE 8 and Java EE 8
我还不确定在本段中与javax在二进制级别上的向后兼容性意味着from the blog post:
除了Jakarta EE 8以外还会发生什么?
Jakarta EE 9的指导原则是在不抑制创新的情况下最大程度地提高与Jakarta EE 8的兼容性,以用于将来的版本。 这很可能涉及两个关键主题:将部分或全部Jakarta EE规范源迁移到新的命名空间,以用于 未来的发展; 旨在在二进制级别提供与javax的向后兼容性, 允许旧的应用程序通过某种形式的构建或运行时工具在Jakarta 9实现上运行。
例如,是否可以从javax.faces.component.UIComponent
类型的对象中分配类型为jakarta.faces.component.UIComponent
的变量,反之亦然?