所以我试图了解哪些 JDK 版本与 Jakarta EE 9.1 兼容(使用 glassfish 6.1.0)。显然它最高支持 JDK 11,但在 NetBeans 中能够在安装了 JDK 16 的情况下完美运行 GlassFish。它还显示已安装的 Jakarta API 库的版本为 9.0.0,但不知何故我仍然能够下载、安装和运行 GlassFish 6.1.0..
简单地说,我只是对所有版本兼容性以及在没有匹配版本的情况下如何在我的端上工作感到困惑(假设我上面写的内容是正确的)。
一些产品也可以与更高版本的 Java 配合良好。
Java 8、11、17 和 21 是官方长期支持 (LTS) 版本。因此,这些是预计在生产中用于严格部署的版本。
Jakarta EE 9.1 的要点是对 Java 11 的支持。一些规范还有其他变化,但大多是次要的。
Jakarta 10 目前正在开发中,您可以期待看到创新和改进。您可以找到许多讨论可能的更改和当前计划的视频演示和博客文章。各个团队正在寻求那些对其特定规格感兴趣的人的意见。
你说:
能够在安装了 JDK 16 的情况下完美运行 GlassFish
Java 16 现已终止,不再受支持。我建议您继续使用 Java 17(当前版本)以及 LTS 版本。
是的,许多产品可以在更高版本的 Java 上运行良好。对于旨在支持 Java 11 的符合 Jakarta EE 9.1 的产品尤其如此。Java 在破坏或限制 Java 8 和 11 之间的向后兼容性方面存在一些问题。因此,一些较旧的产品在超越 Java 8 时可能会遇到问题。相比之下,从 Java 11 到 17 的兼容性非常顺利,几乎没有问题。
但这就是官方 Java 版本的“六个月节奏”的重点。您可以而且可能应该使用每个 Java 版本来完成一些开发和测试工作。如果您遇到任何问题,可以尽早向问题产品的开发人员提供反馈。 特别是关于
Eclipse GlassFish,他们的主页描述了各种版本。
版本 6.2.2 是符合 Jakarta EE 9.1 的当前版本。