[轉帖]JDK/Java 17 GA,新增「Free Java License」

济南小老虎發表於2024-06-11
https://zhuanlan.zhihu.com/p/410556607

[轉帖]JDK/Java 17 GA,新增「Free Java License」

按照發布規劃,JDK/Java 17 屬於長期支援版本 (LTS),將會獲得 8 年的技術支援,直至 2029 年 9 年。

[轉帖]JDK/Java 17 GA,新增「Free Java License」

JDK/Java 17 總共包含 14 個 JEP,具體如下:

[轉帖]JDK/Java 17 GA,新增「Free Java License」

Restore Always-Strict Floating-Point Semantics

恢復始終執行嚴格模式 (Always-Strict) 的浮點定義

Enhanced Pseudo-Random Number Generators

新增增強的偽隨機數生成器

New macOS Rendering Pipeline

為 macOS 引入新渲染管道

macOS/AArch64 Port

支援將 JDK 移植到 macOS/AArch64 架構

Deprecate the Applet API for Removal

棄用待移除的 Applet API

Strongly Encapsulate JDK Internals

強封裝的 JDK 內部 API,預設對 JDK 內部進行強封裝

Pattern Matching for switch (Preview)

switch 模式匹配進入預覽 (Preview) 階段

Remove RMI Activation

移除 RMI(遠端方法呼叫)啟用機制

Sealed Classes

密封類和介面正式可用,用於限制哪些類和介面可以繼承或實現它們。

Remove the Experimental AOT and JIT Compiler

移除實驗性的 AOT 和 JIT 編譯器

Deprecate the Security Manager for Removal

棄用待移除的安全管理器 (Security Manager)

Foreign Function & Memory API (Incubator)

外部函式和記憶體 API 進入孵化階段,Java 應用程式透過該 API 能夠與 Java 執行時之外的程式碼和資料進行互操作。

Vector API (Second Incubator)

在 JDK/Java 17 中,Vector API 已進入孵化的第二階段,Vector API 用於表達可在支援的 CPU 架構上編譯為最佳向量硬體指令的向量計算,以實現優於等效標量計算的效能。

Context-Specific Deserialization Filters

增加面向特定上下文的反序列化過濾器,此特性允許應用程式透過 JVM 的過濾器工廠配置特定於上下文和動態選擇的反序列化過濾器。

值得一提的是,根據 Oracle 最新推出的「Free Java License」,Oracle JDK 可免費用於生產環境。

Free Java License 摘要

  • 為 Oracle JDK 免費提供所有季度的安全更新,包括商業和生產用途。

  • 新的許可證屬於“Oracle 免費條款和條件”(NFTC) 許可證。此許可證允許所有使用者免費使用,甚至可以用於商業和生產用途。再分發同樣不收取費用。

  • 開發者和組織現可輕鬆下載、使用、共享和重新分發 Oracle JDK。

  • Oracle 將從 Oracle JDK 17 開始提供這些免費版本和更新,並在下一個 LTS 版本釋出之後繼續提供整整一年。注意以前的版本不受此更改的影響。

  • Oracle 將繼續按照自 Java 9 以來的相同版本和時間表提供 GPL 下的 Oracle OpenJDK 版本。

此外,Oracle 還提議將 JDK LTS 的釋出週期從每三年一次改為每兩年一次。如果該提案被接受,這意味著 JDK 17 之後的下一個 JDK LTS 版本將是 JDK 21,而不是 JDK 23。

相關文章