2019年JDK市場概述

2019年JDK市場概述

  • 2019.5.6
  • 版權聲明:本文爲博主chszs的原創文章,未經博主允許不得轉載。

一、Oracle JDK

由於Oracle JDK 8的免費公共更新結束,並且Oracle已經更改了新Oracle JDK的使用條款。但是,用戶仍然可以無限期地繼續使用Oracle JDK 8,但Oracle不會再提供2019年1月之後面向商業用途的公開更新。

這個問題有幾種解決方案。

一種選擇是升級到Oracle自己提供的更新的JDK版本。Oracle JDK 11是最新的長期支持(LTS)版本。它可以免費用於開發,測試,原型設計和演示,但不能用於生產環境。但是,Oracle爲OpenJDK 11提供了所有JDK的功能。因此,Oracle JDK 11和Oracle OpenJDK 11現在可以互換。另外,Oracle每六個月就會發佈一個新的OpenJDK功能版本,而Oracle只會爲最新版本的Oracle OpenJDK提供季度更新。因此,如果您想要保持最新,每六個月您必須升級最新的OpenJDK。

另一種選擇是使用其他供應商提供的JDK發行版,它們大多數都是基於OpenJDK衍生的版本。Java Community Process(JCP)提供了一個技術兼容性工具包(TCK)來驗證JDK構建是否符合Java標準。一旦構建通過TCK,它就可以稱爲“Java SE兼容”。而認證過程需要Oracle 的商業許可。

可以選擇的第三方JDK發行版有:

二、AdoptOpenJDK

AdoptOpenJDK使用HotSpot JVM或OpenJ9 JVM作爲OpenJDK的Java運行時。前者是OpenJDK社區的JVM,是最常用的JVM(也包含在Oracle JDK中)。後者是由IBM開發的JVM,現在已經爲Eclipse社區做出了貢獻。

AdoptOpenJDK仍在與Oracle合作達成使用Java SE TCK的協議。儘管如此,他們聲稱他們的二進制文件經過了所有可用的OpenJDK測試套件的大量測試。

AdoptOpenJDK發佈路線圖遵循OpenJDK的計劃,即每六個月發佈一次新功能,每三個月進行一次維護/安全更新。此外,每三年,一個功能版本被指定爲LTS。

三、Amazon Correto

Amazon Correto是亞馬遜根據OpenJDK的GPL + CE許可提供的經過認證的OpenJDK發行版(這意味着可以在生產中免費使用)。Correto 8可用作OpenJDK 8的替代品,亞馬遜將至少每季度更新至2023年6月。與OpenJDK 11相對應的Correto 11最近以預覽模式發佈,並將至少在2024年8月之前收到季度更新。適用於流行的操作系統,如Linux,macOS和Windows。

四、SAP

SapMachine是SAP公司根據OpenJDK的GPL + CE許可提供的受SAP支持的OpenJDK版本。目前,SapMachine 11是一個LTS版本,已經通過了UKntu,macOS,Windows,SLES和RHEL的TCK。SapMachine團隊的目標是使SapMachine儘可能接近OpenJDK。SAP也是OpenJDK項目最大的外部貢獻者之一。

五、Red Hat

Red Had 爲RHEL和Windows系統提供了OpenJDK構建。Red Hat OpenJDK的更新和支持需要訂閱。RHEL的訂閱還包括Red Hat OpenJDK的訂閱。與Red Hat Middleware訂閱一起使用的Windows系統也包括Red Hat OpenJDK訂閱。否則,需要在Windows中額外訂閱OpenJDK。

六、Azul

Zulu是Azul Systems認證的JDK。Zulu適用於Linux,Windows,macOS,Solaris和Docker。Zulu可以免費下載和使用,但安全更新和錯誤修復僅在Zulu Enterprise訂閱下提供。由Oracle和Open JDK社區指定爲LTS的相同Java版本也被Zulu指定爲LTS。Zulu Enterprise提供了8年的LTS更新。

七、IBM

IBM爲AIX、Linux和z/OS平臺提供了基於BM J9 VM的JDK SE 8發行版。自2017年9月以來,J9虛擬機已作爲OpenJ9 VM貢獻給Eclipse社區。如果您對使用較新Java版本的J9 VM感興趣,IBM建議使用AdoptOpenJDK中的JDK二進制文件。IBM將繼續發佈JDK 8的安全更新,直到2022年4月。

八、總結

歸納以上內容,可以用如下表格進行對比。

JDK 8 JDK 8 JDK 8 JDK 11 JDK 11 JDK 11
發行版 是否可下載 是否可免費用於生產環境 是否支持2019年1月後的更新 是否可下載 是否可免費用於生產環境 是否支持更新 是否通過TCK兼容性測試
Oracle JDK
Oracle OpenJDK 是(非LTS) 是(直到JDK 12)
AdoptOpenJDK
Amazon Correto
Sapmachine
RedHat OpenJDK 是(適用於RHEL和Windows) 包含在RHEL/Windows中間件 是(適用於RHEL和Windows) 包含在RHEL/Windows中間件
Zulu Zulu Enterprise Zulu Enterprise
IBM OpenJDK - -
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章