作者:OSC-王練
來自:開源中國(oschina2013)
如需轉載請在文中註明來源和作者
在去年的 Java One 上,Mark Cavage 當時宣佈 Oracle 將逐步開源 Oracle JDK 的專有功能(商業特性)。Oracle Java 平臺產品管理高階總監 Donald Smith 曾在一篇部落格文章中寫道,他們的目的是讓 OpenJDK 版本和 Oracle JDK 二進位制檔案之間沒有技術差異。
但關於 OpenJDK 和 Oracle JDK 以及其他服務商提供的變種版本,各自的許可證是什麼,又都提供哪些服務和支援,讓許多 Java 開發者理不清頭緒,容易混淆。
Oracle 7 月份啟用新的 Java SE 訂閱樣式的訊息一齣,更是讓許多開發者認為是不是代表 Java 以後要收費?
為解答 Java 社群的疑惑,超過30位 Java 社群領袖和專家共同建立了一個 Google 檔案,裡面詳細描述了各版本之間的區別,並對一些常見問題進行了答疑。檔案分為“短版本”和“長版本”,建議所有 Java 開發者研讀。
檔案中強調,開發者仍然可以免費獲得 Oracle JDK、Oracle 的 OpenJDK ,以及其他服務商提供的 OpenJDK:
OpenJDK 社群建立並維護 (GPLv2+CE 許可) Java SE 規範的開源參考實現(RI),受 JCP(Java Community Process)管理,並根據 JSR(Java Specification Request)釋出未來每個版本。
有不同服務商提供不同的 Java SE 實現(如 Azul、Eclipse、IBM、Red Hat、Oracle、SAP 和其他公司),其中最通用的是 Oracle JDK 。
雖然 Java 11 LTS 已釋出,但更多的開發者還停留在上一個 LTS 版本 —— Java 8 。關於開發者最為關註的 Java 8 的許可問題,檔案給出瞭解答:
Oracle 將在2020年12月前為個人桌面使用者繼續提供 Oracle JDK 8 的公共更新。若是商業用途,則在2019年1月之後不會再有免費的商業版本更新。但是,自 Java SE 9 以後,Oracle 還提供了 OpenJDK 版本,可免費用於商業用途,並且還有其他服務商提供的免費 OpenJDK 版本可供選擇,如 AdoptOpenJDK、Azul、IBM、Red Hat、Linux distros 等。
也就是說,如果屆時你想繼續免費使用 Java 8,你可以:
-
不再更新,繼續無限期地使用 Oracle JDK 8 ;
-
使用來自其他服務商的免費 Java SE 8 / OpenJDK 8 二進位制分發版。
上面也有提到,由於 Oracle 在7月份改變了 Java SE 的商業支援樣式,所以從 Java 11 開始,支援方式有所不同:
Oracle OpenJDK – 使用 GPLv2 + CE 許可,可用於商業用途;
Oracle JDK – 使用付費商業許可(個人和非商業使用免費)。
最後附上各版本支援路線圖:
●編號801,輸入編號直達本文
●輸入m獲取文章目錄
資料庫開發
更多推薦《18個技術類微信公眾號》
涵蓋:程式人生、演演算法與資料結構、駭客技術與網路安全、大資料技術、前端開發、Java、Python、Web開發、安卓開發、iOS開發、C/C++、.NET、Linux、資料庫、運維等。