JDK的收費問題


 

關於JDK是否收費,我也有過疑問,查了一些資料,就在這里做一個簡要的說明。

  首先要明白JDK的發布模型。兩年多以前,2017年9月21日,伴隨着JDK9的發布,JDK就開啟了新的發布模式(如下圖所示)。JDK分為OracleJDK、OpenJDK。

 

OpenJDK

  OpenJDK的lience是GPLv2+CPE,可以免費使用。從JDK9開始,OpenJDK每6個月發布一次,也就是每年的3月份、9月份各發布一次,稱為feature release。JDK9就是在2017年9月份過GA的。

  除了feature release之外,OpenJDK每個季度會提供一個update release。分別在1月份、4月份、7月份和10月份。所以每個feature release之后,都會有兩個update release。

  再說一次,OpenJDK可以免費使用。

OracleJDK

  使用OracleJDK需要commercial license,這個不是免費的。OracleJDK每3年發布一次LTS(Long Term Support)版本,Support的期限是8年。2018年9月發布的JDK11是第一個LTS版本,support到2026年9月。同樣,OracleJDK每年也有4個update release。

  因為OracleJDK每3年發布一次LTS版本,所以下一次LTS將在2021年9月份發布。

 

OpenJDK與OracleJDK的區別

之前有一些commercial features沒有包含在OpenJDK中,例如:

  Java Flight Recorder: http://openjdk.java.net/jeps/328

  Java Mission Control: http://openjdk.java.net/projects/jmc/

  Application Class-Data Sharing: http://openjdk.java.net/jeps/310

  ZGC: http://openjdk.java.net/jeps/333

但是現在這些commercial features已經貢獻給了OpenJDK社區,所以從JDK11開始,OpenJDK與OracleJDK基本完全一樣。但是它們之間仍然有一些差異,具體查看下面的文章:

https://blogs.oracle.com/java-platform-group/oracle-jdk-releases-for-java-11-and-later

JDK11收費嗎?

OpenJDK是免費的。對於想要不斷體驗新特性的developer來說,是理想的選擇。

OracleJDK不是免費的。對於企業用戶來說,可能不是太願意頻繁升級,那么就選擇OracleJDK。

OracleJDK 收費是針對 公司、商業用途的,如果只是個人學習Java的話,這些是沒什么影響!

 

 

另外,Oracle 曾在今年四月就宣布,自 2019 年 1 月起,Java SE 8 公開更新將不向沒有商用許可證的業務、商用或生產用途提供。

但我們細讀這句話,就會懂得 收費的並不是JDK8 , 而是JDK8后續的update (更新) 。

什么是update? 如果你下載過JDK, 就會看到那些8u191, 8u192這樣的東西,191,192就是update 的編號。

這些update中通常會包含對JDK bug的fix ,或者一些功能的改變,增強, 拿update 172為例:

  1. 這個update 修改了下面兩個方法的文檔,讓文檔描述和方法的實現一致:

        java.awt.Toolkit.getImage(URL u)

        java.awt.Toolkit.createimage(URL u)

  2. 增加了在Windows8 及以上版中,對Swing/AWT 文本組件自動顯示觸摸鍵盤的功能

  3. 36個Bug Fix

 

 

假設JDK 8u192是2018年的最后一個update , 你下載並且安裝了,那可以繼續免費使用下去,沒有任何問題。

但是從2019年1月開始,如果你還想獲取JDK的update , 對不起,你需要付費訂閱。

這個訂閱服務的價格是這樣的:

  對於PC, 每用戶每月是2.5美元,對於服務器/雲部署,每個processor 每月是25美元, 當然,數量多的話可以打折。

 

 

References

  https://www.oracle.com/technetwork/java/javase/eol-135779.html

  https://www.oracle.com/technetwork/java/javase/downloads/index.html

  https://blogs.oracle.com/java-platform-group/oracle-jdk-releases-for-java-11-and-later

  https://www.infoq.com/news/2017/09/Java6Month

  2019年1月起Oracle要對JDK8就要收費了!

 

 

共同學習,共同進步,若有補充,歡迎指出,謝謝!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM