Java版本歷史

Java語言自JDK 1.0 版本以來經歷了許多次更新 ， 也在基本程式庫中增加了大量的類別和套件 。 從J2SE 1.4 開始 ， Java語言的變動由 Java Community Process （ JCP ） 管理 ， JCP使用Java規範請求 （ Java Specification Requests ， JSRs ） 來建議和定義對Java平臺內容的新增和修改 。 Java語言由Java語言規範 （ Java Language Specification ， JLS ） 定義 ， 對JLS的更改則根據JSR 901管理 。 除了語言上的變化 ， 多年來Java標準庫 （ JCL ） 發生了巨大的變化 ， 從JDK 1.0 中的幾百個類暴增到J2SE 5中的三千多個類 。 Swing 、 Java2D等的全新API被加入其中 ， 而許多原本JDK 1.0 的類和方法已被棄用 。 當然 ， 仍然有一些程式可以將Java程式從新版本的Java平臺轉換爲較舊版本 （ 例如Java 5.0 降轉到 1.4 ） 。 Java 7發佈後 ， Oracle承諾回到以前每兩年發佈一次的發佈週期 。 但在2013年時 ， Oracle卻宣佈他們將Java 8延遲一年發表 ， 官方表示是爲了修復Java的安全漏洞 。 2017年9月 ， Java 平臺的主架構師 Mark Reinhold 發出提議 ， 要求將 Java 的功能更新週期從之前的每兩年一個新版本縮減到每六個月一個新版本 。 該提議獲得了通過 ， 並在提出後不久生效 。 Java 17, 11, 8 爲目前提供支持的 LTS （ 長期支持 ） 版本 ； Java 10 是上一個快速發佈版本 ， 且已不再被支持 。 2018年9月 ， 隨着 Java 11 的發佈 ， Java 10 自當日起不再被支持 。 Oracle 將在 2019 年 1 月前爲商業用途中的 Java 8 長期支持 ， 而針對非商用的更新將繼續提供 ， 直至 2020 年 12 月 ； 此外 ， AdoptOpenJDK 也爲 Java 8 提供免費更新 。 針對 Java 11 的長期支持將不再由 Oracle 提供 ， 而是改由 OpenJDK 社區提供 ， 例如 Eclipse Adoptium （ 以前稱之爲 AdoptOpenJDK ） 的 Eclipse Temurin 。