簡體   English   中英

Jakarta/Java EE 兼容性如何工作?

[英]How does Jakarta/Java EE compatibility work?

所以我試圖了解哪些 JDK 版本與 Jakarta EE 9.1(使用 glassfish 6.1.0)兼容。 顯然它最多支持 JDK 11,但在 NetBeans 中能夠完美運行安裝了 JDK 16 的 GlassFish。 它還表明已安裝的 Jakarta API 庫是 9.0.0 版,但不知何故我仍然能夠下載、安裝和運行 GlassFish 6.1.0..

簡而言之,我真的對所有版本兼容性以及沒有匹配版本的東西如何在我的一端工作感到困惑(假設我上面寫的內容是正確的)。

  • 任何符合 Jakarta EE 9.0 的產品都保證可以使用 Java 8。
  • 任何符合 Jakarta EE 9.1 的產品都保證可以使用 Java 11。

某些產品也適用於更高版本的 Java。

Java 8、11 和 17 是官方的長期支持 (LTS)版本。 因此,這些版本預計將在生產中用於重要部署。

Jakarta EE 9.1 的重點是對 Java 11 的支持。一些規范有其他變化,但大多是次要的。

目前正在開發中的 Jakarta 10 是您可以期待看到創新和改進的地方。 您可以找到許多討論可能的變化和當前計划的視頻演示和博客文章。 各個團隊都在征求那些對他們的特定規范感興趣的人的意見。

你說:

能夠在安裝了 JDK 16 的情況下完美運行 GlassFish

Java 16 現已停產,不再受支持。 我建議您繼續使用 Java 17、當前版本和 LTS 版本。

是的,許多產品在 Java 的更高版本上運行良好。 對於符合 Jakarta EE 9.1、旨在支持 Java 11 的產品尤其如此。Java 在破壞或限制 Java 8 和 11 之間的向后兼容性方面存在一些問題。因此,一些較舊的產品在通過 Java 8 時可能會遇到問題。相比之下,Java 11 到 17 的兼容性非常順利,幾乎沒有問題。

但這就是官方 Java 發布的六個月節奏的重點。 您可以而且很可能應該使用每個 Java 版本進行一些開發和測試工作。 如果您遇到任何問題,您可以盡早向有問題的產品的開發人員提供反饋。

特別是關於Eclipse GlassFish他們的主頁描述了各種版本。

  • 版本 6.2.2 是符合 Jakarta EE 9.1 的當前版本。
    • 使用 JDK 11 編譯到 JDK 17
    • 在 JDK 11 到 JDK 17 上運行。
    • 使用 JDK 18 早期訪問版本進行了簡要測試。
  • 之前的版本 GlassFish 6.2.1 大大改進了對 JDK 17 的支持。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM