揮別Java 8:Devops工具Jenkins宣布本周正式向Java 11遷移
由Kohsuke Kawaguchi 打造的Jenkins(最初被稱作Hudson)Devops 工具,轉眼已經過去了十個年頭。在Oracle / Sun 收購引發的分叉之前,用Java 編寫的該平台在持續集成和交付領域相當受歡迎。最新消息是,Jenkins 項目組剛剛表示,本週的2.357 和即將於9 月到來的LTS 版本,都將需要在Java 11 的基礎上運行。
截圖(來自:Jetkins.io)
雖然Jenkins LTS 核心支持Java 11 已有一段時間,但作為一個“長期支持版本”(LTS),Java 11 本身已可追溯到2018 年。
此外作為向2014 年發布的Java 8 告別的一部分(供應商將持續支持到2030 年),六月LTS 也已經支持Java 17(Java SE 的最新LTS)。
Jenkins 團隊指出,雖然項目會在可預見的一段時間內保留在Java 8 上,但這麼做將是不夠嚴謹的。
畢竟Jenkins 使用的多個第三方庫,都依賴於更高的Java 版本,因而堅持使用Java 8 會導致上游項目的更新變得更少。
問題在於,從Java 8 / 9 向更高版本的轉變,同時也會給諸多開發者帶來各式各樣的挑戰—— 無論是語言/ 運行時等方面的技術支持、還是法律層面的許可政策問題。
痛定思痛之後,Jenkins 最終還是在2018 年開啟了對Java 11 的支持工作,並隨著本週的發布而正式提出了這一要求。
另外Jenkins 也將帶來對Java 17 的全新支持,只是目前尚未抵達可向社區快速推廣開來的階段。
好消息是,未來從Java 11 向Java 17 遷移的過程,肯定不會像從Java 8 向Java 11 遷移那樣痛苦。