在生產中使用Java 11:需要了解的重要事項

java人生發表於2018-10-23

如果您正考慮更新最新版本的Java,閱讀本文以瞭解有關Oracle Java 11的最重要資訊。

如果您及時瞭解Java社群的新聞,您可能聽說Oracle改變了他們對Java的支援模s式。有些謠言甚至暗示我們現在必須付錢才能使用Java - 這不是真的!

這個主題非常複雜,因為自Java 8釋出以來已經有許多重疊的變化。新的六個月釋出節奏和Oracle在許可和支援模型上的變化意味著任何部署Java的組織都應藉此機會來看看:

  • 從哪裡獲得JDK(e.g. Azul, IBM, Oracle, Red Hat, or other OpenJDK build)
  • 生產上使用java版本
  • 他們是否希望獲得這些Java版本的更新(例如補丁和安全修復程式)
  • 將來希望使用哪些版本
  • 他們想要更新Java版本(即下一個主要版本)的頻率
  • 他們期望為他們的版本提供什麼樣的支援(即分類和錯誤報告)

image

Oracle JDK變化

在過去,我們只是簡單地下載了Oracle的JDK,並在開發,測試和生產中使用它。從Java 11開始,Oracle已經改變了他們的JDK許可證,它們不再是單一的JDK構建,而被分為商業使用(即付費支援)或免費(我們大多數正在做),它們現在有兩個不同的JDK構建:

  • Oracle's JDK (商業)-在開發和測試中可以免費使用,在生產中使用必須付費
  • Oracle's OpenJDK (開源免費)-
    你可以在任何環境中,像使用任何開源庫一樣免費使用。

注意,自Java 11以來,Oracle的商業JDK和Oracle的OpenJDK版本在功能上是相同的。因此,我們的應用程式無需進行任何更改或丟失任何功能,並在任何一個上都能執行。

支援與更新

這兩個版本之間存在重要區別 - 如果使用的是Oracle的商業JDK,將獲得更新和支援。如果使用的是Oracle的OpenJDK版本,Oracle將不會為以前的版本提供更新。這意味著現在Java 11已經出局,Oracle將不再為10或9更新他們的OpenJDK版本。因此,如果您使用的是Oracle的OpenJDK版本,那麼您應該準備好更新他出來的每個新版本的Java(或執行一個不會得到更新的舊版本)。

話雖如此,Oracle並不是這場競賽中唯一的供應商。多年來,我們已經習慣了使用他們的免費JDK,因此,它通常是我們的預設設定,但是還有其他供應商提供JDK,他們有不同的支援模式(免費和付費)以及對Java不同版本的提供更新的不同的態度。例如,其中一些供應商可能會繼續為Java 9(Oracle不會)提供更新和/或支援。

Stephen Colebourne撰寫了一篇文章,總結了來自不同供應商的不同JDK版本,並解釋了所有這些供應商如何(以及為什麼)為相同程式碼(即OpenJDK)提供不同版本。

加入您不想使用任何一個Oracle JDK版本(例如,如果他們的支援或更新策略不適合您),請了解一下AzulIBMRed Hat和社群主導的AdoptOpenJDK代替提供的內容。

結束語

這個摘要是我在9月份的Annotated Monthly中寫的,更新反映了Java 11的釋出:

  • 您仍然可以免費下載商業Oracle JDK,並在開發/測試環境中免費使用它。
  • Oracle的JDK 8自2019年1月之後將不再接收公共更新。如果您希望接收Java 8的更新,您可能需要向Oracle支付費用或尋找另一個JDK版本。
  • 自從提出六個月的釋出週期,Java“舊”版本(包括9和10)的持續支援和更新已發生變化。
    • 由於Oracle的商業許可JDK,不再更新或支援Java 9和Java 10。如果您當前正在使用Oracle的JDK,則需要檢視正在使用的版本以及您希望將來使用的版本,如果要在生產中使用它,則需要了解Oracle的支援模型(和價格)。
    • 如果使用OpenJDK,您可能需要儘快升級到最新版本,這具體取決於您使用的是哪個供應商的版本。這個建議幾乎適用於任何免費的開源庫或框架。
    • 其他供應商可能會對Java 9或其他版本提供支援。
  • 如果您希望對生產中執行的Java版本提供完全支援或更新,則應比較和對比AzulIBMOracleRed Hat的支援模型和價格。請注意,這些公司總是免費提供服務和支援,但這些都不是新的。

更多資訊

  • Java is Still Free (Java Champions) -如果你只想讀一篇文章,那應該是這個。Java Champions曾深入探討這個主題,Java Champions是一個獨立專家組織(完全披露:這篇博文的作者也是Java Champion一員)。該檔案也已經過主要供應商的代表檢查,因此您可以確信資訊是正確的。它也有西班牙語版本。
  • A Quick Summary on the new Java SE Subscription (Oracle)
  • Oracle JDK Releases for Java 11 and Later (Oracle)
  • The future of Java and OpenJDK updates without Oracle support (Red Hat)
  • Eliminating Java Update Confusion (Azul)
  • Java is still available at zero-cost (Stephen Colebourne)
  • The Future of Java / OpenJDK and How it Impacts You! (Video: Virtual Java User Group)


相關文章