美國(guó)當(dāng)?shù)貢r(shí)間9月25日,Oracle 官方宣布 Java 11 (18.9 LTS) 正式發(fā)布!這是自 Java 8 后的首個(gè)長(zhǎng)期支持版本,非常值得大家的關(guān)注,
可以通過(guò)下面的地址進(jìn)行下載:
https://www.oracle.com/technetwork/java/javase/downloads/jdk11-downloads-5066655.html
Java 11 版本說(shuō)明
按照 Oracle 公布的支持路線圖,Java 11 將會(huì)獲得 Oracle 提供的長(zhǎng)期支持服務(wù),直至2026年9月。
為了更快地迭代,以及跟進(jìn)社區(qū)反饋,Java 的版本發(fā)布周期變更為每六個(gè)月一次 —— 每半年發(fā)布一個(gè)大版本,每個(gè)季度發(fā)布一個(gè)中間特性版本,并且承諾不會(huì)跳票。通過(guò)這樣的方式,開(kāi)發(fā)團(tuán)隊(duì)可以把一些關(guān)鍵特性盡早合并到 JDK 之中,以快速得到開(kāi)發(fā)者反饋,在一定程度上避免出現(xiàn)像 Java 9 這樣兩次被迫延遲發(fā)布的窘?jīng)r。
按照官方的說(shuō)法,新的發(fā)布周期會(huì)嚴(yán)格遵循時(shí)間點(diǎn),將于每年的3月份和9月份發(fā)布。所以 Java 11 的版本號(hào)是 18.9(LTS)。
不過(guò)與 Java 9 和 Java 10 這兩個(gè)被稱為“功能性的版本”不同(兩者均只提供半年的技術(shù)支持),Java 11 不僅提供了長(zhǎng)期支持服務(wù),還將作為 Java 平臺(tái)的參考實(shí)現(xiàn)。Oracle 直到2023年9月都會(huì)為 Java 11 提供技術(shù)支持,而補(bǔ)丁和安全警告等擴(kuò)展支持將持續(xù)到2026年。
新的長(zhǎng)期支持版本每三年發(fā)布一次,根據(jù)后續(xù)的發(fā)布計(jì)劃,下一個(gè)長(zhǎng)期支持版 Java 17 將于2021年發(fā)布。
Oracle 公布的未來(lái) Java 版本發(fā)布和支持周期圖
Java 11 許可證
以下內(nèi)容摘自官網(wǎng)公告
Oracle JDK 11 許可證中的重要變更
使用 JDK 11,Oracle 已更新了我們提供 Oracle JDK 的許可條款。Oracle Java SE 的新 Oracle 技術(shù)網(wǎng)開(kāi)發(fā)者許可與提供以前版本的 JDK 的許可證大不相同。在下載和使用本產(chǎn)品之前,請(qǐng)仔細(xì)閱讀新條款。
Oracle 還在 jdk.java.net/11 上通過(guò) GPL 許可證提供此軟件。
按照官方的說(shuō)法,從 Java 11 開(kāi)始,Oracle 將在 GPLv2 許可證下提供 JDK 版本,采用 Classpath Exception (GPLv2+CPE) 的方式,滿足了在商業(yè)許可下使用 Oracle JDK 作為 Oracle 產(chǎn)品或服務(wù)的一部分,或者不想使用開(kāi)源軟件的需求。這種使用開(kāi)源許可證和商業(yè)許可證的組合取代了歷史上的“BCL”許可證,該許可證具有免費(fèi)和付費(fèi)商業(yè)條款的組合。
Java 11 新特性
官網(wǎng)公開(kāi)的 17 個(gè) JEP(JDK Enhancement Proposal 特性增強(qiáng)提議):
181: Nest-Based Access Control(基于嵌套的訪問(wèn)控制)
309: Dynamic Class-File Constants(動(dòng)態(tài)的類文件常量)
315: Improve Aarch64 Intrinsics(改進(jìn) Aarch64 Intrinsics)
318: Epsilon: A No-Op Garbage Collector(Epsilon 垃圾回收器,又被稱為"No-Op(無(wú)操作)"回收器)
320: Remove the Java EE and CORBA Modules(移除 Java EE 和 CORBA 模塊,JavaFX 也已被移除)
321: HTTP Client (Standard)
323: Local-Variable Syntax for Lambda Parameters(用于 Lambda 參數(shù)的局部變量語(yǔ)法)
324: Key Agreement with Curve25519 and Curve448(采用 Curve25519 和 Curve448 算法實(shí)現(xiàn)的密鑰協(xié)議)
327: Unicode 10
328: Flight Recorder(飛行記錄儀)
329: ChaCha20 and Poly1305 Cryptographic Algorithms(實(shí)現(xiàn) ChaCha20 和 Poly1305 加密算法)
330: Launch Single-File Source-Code Programs(啟動(dòng)單個(gè) Java 源代碼文件的程序)
331: Low-Overhead Heap Profiling(低開(kāi)銷的堆分配采樣方法)
332: Transport Layer Security (TLS) 1.3(對(duì) TLS 1.3 的支持)
333: ZGC: A Scalable Low-Latency Garbage Collector (Experimental)(ZGC:可伸縮的低延遲垃圾回收器,處于實(shí)驗(yàn)性階段)
335: Deprecate the Nashorn JavaScript Engine(棄用 Nashorn JavaScript 引擎)
336: Deprecate the Pack200 Tools and API(棄用 Pack200 工具及其 API)