在 Python、JavaScript 等一眾編程語言崛起風(fēng)靡之際,一代霸主 Java 風(fēng)采雖不及當(dāng)年,但仍橫掃了各大編程語言排行榜,也依舊是各大企業(yè)級應(yīng)用開發(fā)語言中的 NO.1。 TIOBE 2019 年 4 月編程語言 Top 5 不過,有不少網(wǎng)友發(fā)現(xiàn),即使如此,Java 之于其母公司 Oracle,地位似乎日趨愈下。而這也并非空穴來風(fēng),種種現(xiàn)實(shí)表明,Oracle 正在從其內(nèi)部逐步削弱 Java 品牌的存在。 紅帽接管 OpenJDK 8 和 OpenJDK 11 追溯到 2014 年 3 月和 2018 年 9 月,Oracle 分別推出了 Java 的兩個長期支持版本 JDK 8 和 JDK 11。 經(jīng)歷了多年的發(fā)展之后,Java 8 已成為開發(fā)者最常使用的 Java 版本。不過作為 Java 的掌控者 Oracle 也在此不久后,改變了使用 Java 的“游戲規(guī)則”: JDK 8:自 2019 年 1 月起,Java SE 8 公開更新將不向沒有商用許可證的業(yè)務(wù)、商用或生產(chǎn)用途提供; JDK 11:新版 Oracle JDK 不可以用在數(shù)據(jù)處理、商業(yè)、產(chǎn)品、或者內(nèi)部商業(yè)用途(需要購買 License),僅可免費(fèi)用于開發(fā)、測試、原型、演示。 簡而言之,開發(fā)者或企業(yè)想要使用 Java 8/11 中的 OracleJDK,要么付費(fèi),要么另選它法。在此情況之下,不少人被迫選擇了開源且免費(fèi)的 OpenJDK 版本,同時如阿里的 Dragonwell、亞馬遜的 Corretto 等 OpenJDK 發(fā)行版也紛涌而至。 不過,使用 OpenJDK 也有一定的缺點(diǎn),如它的源碼并不完整、開發(fā)者需要經(jīng)常升級等等,此外,Oracle 對 OpenJDK 的服務(wù)支持時長也有一定的期限,即維護(hù)時長到期后,Oracle 會直接放棄老版 OpenJDK 的 Bug 修復(fù)和安全更新。 近日,對于使用 OpenJDK 8 和 OpenJDK 11 的開發(fā)者和企業(yè)來說,有一件值得慶賀的事情。日前,全球知名的開源解決方案提供商紅帽(Red Hat)于官網(wǎng)正式宣布,“在 Oracle 轉(zhuǎn)型后,Red Hat 將成為 OpenJDK 8 和 OpenJDK 11 兩個項目的管理者。隨著這種角色轉(zhuǎn)變,Red Hat 也將遵循曾領(lǐng)導(dǎo) OpenJDK 6 和 OpenJDK 7 項目的道路,繼續(xù)對 Java 社區(qū)進(jìn)行支持?!?/p> 事實(shí)上,于 2014 年發(fā)布的 OpenJDK 8,Oracle 為其提供的五年支持已于今年初終止。紅帽在此時能將 OpenJDK 8 和 OpenJDK 11 的項目接手過來,這意味著開發(fā)者可以繼續(xù)免費(fèi)使用該 OpenJDK 的支持服務(wù)直到 2023 年 6 月和 2024 年 10 月。此外,紅帽也解釋道,之所以不會維護(hù) OpenJDK 9 或 OpenJDK 10,是因為這兩個是短期支撐版本,只有半年的支持時間。 Oracle 要放棄 Java? 那么,Oracle 將 OpenJDK 的管理權(quán)轉(zhuǎn)讓,到底為哪般? 或許 Oracle 不僅是想放手 OpenJDK,更想放棄的應(yīng)該是 Java。其實(shí),早在 2015 年,就有媒體報道,Oracle 內(nèi)部似乎正在針對 Java 實(shí)施“計劃中的報廢”戰(zhàn)略: 一位負(fù)責(zé) Java 的 Oracle 前高管發(fā)給 InfoWorld 的郵件中聲稱了解 Oracle 公司內(nèi)部信息。其表示,Oracle 正在成為一家與 Salesforce 競爭的云公司。其不再對 Java 感興趣,且 Oracle 不想給競爭對手更多資源,不想分享創(chuàng)新成果。Oracle 正在縮減對 Java EE (企業(yè)版)的投入,同時它也不希望別的公司接手 Java 或 Java EE,而且它正逐步將 JCP (Java Community Process) 打入冷宮?!癢ebLogic 的專利申請將會逐步完成,同時,也會推出一個專利的微服務(wù)平臺?!盬ebLogic 是 Oracle 在2008年收購 BEA Systems 時得到的 Java 應(yīng)用服務(wù)器。 2017 年 9 月,Oracle 突然宣布將 Java EE 的支持和維護(hù)移交給 Eclipse Foundation,其中包括參考實(shí)現(xiàn)、技術(shù)兼容性工具包和“相關(guān)的項目說明文檔”等等。隨后,Eclipse 基金會更是為 Java EE 改名為 Jakarta EE。最終,這一事件的落地也標(biāo)志著 Oracle 已決心減少對 Java 的控制。 再到如今主流的 OpenJDK 8 和 OpenJDK 11 的管理權(quán)已正式被交到了紅帽手上,為此,來自 Ovum 基礎(chǔ)設(shè)施解決方案的杰出分析師 Michael Azoff 也表示道: 當(dāng)前領(lǐng)導(dǎo)和控制管理 Java 的是 Java SE 的所有者 Oracle。顯然,Oracle 希望改變,雖然它擁有 Java SE ,但它已將 Java EE 交給 Eclipse Foundation,后者已將其重命名為 Jakarta EE。 Red Hat 是 OpenJDK 的重要貢獻(xiàn)者,已經(jīng)加強(qiáng)了 OpenJDK 8 和 OpenJDK 11 的管理,它將于 Oracle JDK 融合。我猜測的是,我們可以期待在未來幾年內(nèi)有關(guān) Java 管理權(quán)移交的更多新聞,我相信 Red Hat 擁有一雙安全的手來承擔(dān)這一角色,它也更適合 Java 作為開源軟件,Red Hat 是開源軟件社區(qū)的領(lǐng)導(dǎo)者。 這樣看來,如果說 Oracle 對 Java EE 管理權(quán)的移交是放棄 Java 的第一步,那么這次對 OpenJDK 8 和 OpenJDK 11 的放手,也僅會是 Oracle 從內(nèi)部削弱 Java 品牌的第二步。 至于 Oracle 為何要這么做? 其實(shí),站在 Oracle 的商業(yè)立場,也不難理解其做法。畢竟如今是 AI 云的互聯(lián)網(wǎng)時代,想要在新的環(huán)境中走的更快更遠(yuǎn),必須減負(fù)前行。 此前,在今年 3 月,Oracle 也再次開啟了全球范圍內(nèi)的新一輪的裁員,彼時 Oracle 執(zhí)行副總裁 Don Johnson 也向全員發(fā)送了一封標(biāo)題為“組織重組”的電子郵件。該郵件告知工作人員:將來公司的一切工作都將圍繞 Oracle 云基礎(chǔ)設(shè)施(Oracle Cloud Infrastructure,簡稱OCI)運(yùn)營展開。 而且不僅 Oracle,如微軟也將曾經(jīng)中流砥柱的業(yè)務(wù) Windows 進(jìn)行了拆解與平衡、Apple 也為 iPhone、iPad 等硬件設(shè)備推出了系列軟件服務(wù)、Google 也正在秘密研發(fā)支持全新計算平臺的 Fuchsia 操作系統(tǒng)… 在新浪潮來臨之際,所有的科技公司均是「同一個世界同一個夢想」。 OpenJDK 8 和 OpenJDK 11 的接任管理者,為什么是紅帽? 不過作為開發(fā)者,當(dāng)看到 Oracle 對 JavaEE 以及 OpenJDK 停止服務(wù)以及放手時,或多或少會對自己基于此平臺及技術(shù)所開發(fā)的項目產(chǎn)生一定的擔(dān)憂。 但從另一個角度上來看,紅帽此時可以接管 OpenJDK,整體來說利大于弊。對此,Red Hat 中間件副總裁兼總經(jīng)理 Mike Piech 也在發(fā)布的聲明中直言,“Java 處于文藝復(fù)興時期。它不斷發(fā)展,成為新興架構(gòu)的關(guān)鍵組成部分。開發(fā)者渴望將 Java 帶入下一代開發(fā),而 Red Hat 通過參與 OpenJDK 項目,正在幫助引領(lǐng) JDK 用戶在現(xiàn)有環(huán)境中獲得支持和創(chuàng)新的努力。Red Hat 仍然致力于 Java,并很高興有機(jī)會幫助管理 OpenJDK 社區(qū)?!?/p> 其實(shí),紅帽和 OpenJDK 也早有淵源。自 2007 年起,紅帽就一直活躍在 OpenJDK 社區(qū)中;2013 年,紅帽擔(dān)任 OpenJDK 6 社區(qū)的領(lǐng)導(dǎo)者;2015 年,紅帽再次獲得 OpenJDK 7 的管理權(quán)。 除此之外,紅帽此次獲得 OpenJDK 8 和 OpenJDK 11 的管理權(quán)也算實(shí)現(xiàn)了 Java 之父 James Gosling 的一點(diǎn)愿望了。 9 年前,Oracle 收購了大名鼎鼎的 Sun 公司,由此編程界的一哥 Java 也成為 Oracle 諸多重要業(yè)務(wù)中的一層。不過,彼時令人驚訝的是,Java 創(chuàng)始人 James Gosling 在 Sun 公司被 Oracle 收購之后不久便離職了,而其中緣由,James Gosling 曾在接受《eWeek》專訪時道了不少,包括了薪酬不平等、Sun 高管職權(quán)被架空、權(quán)力結(jié)構(gòu)問題等等,其中還有一點(diǎn)是,最初時候,他本人其實(shí)比較傾向于 IBM 將 Sun 公司收購而不是極具獨(dú)裁性的 Oracle。如今 OpenJDK 8/11 被 IBM 以 340 億美元收購的紅帽接管 ,想必 James Gosling 也是樂意看到的。 紅帽掌管了 OpenJDK,對開發(fā)者而言意味著什么? 事實(shí)上,對于 Red Hat 接管 OpenJDK 8 和 OpenJDK 11 項目,從新技術(shù)角度來看,并不能為 Java 社區(qū)帶來根本性的改變。畢竟對于 Oracle 而言,想要添加新的或?qū)嶒炐缘墓δ軕?yīng)該僅會針對 Java 的最新版本來,而不是回過頭在舊版本上動刀。 基于此,Red Hat Java 平臺團(tuán)隊的首席工程師 Andrew Haley 也曾表示過,在沒有 Oracle 工程師支持的情況下,保持 Java 的更新對 Java 社區(qū)來說將是一個挑戰(zhàn),但同時這也是一個機(jī)遇。一個真正開放和透明的 OpenJDK 更新項目,將吸引更多開發(fā)者參與進(jìn)來,讓所有 Java 用戶受益。 那么 Red Hat 在接管 OpenJDK 8 和 OpenJDK 11 項目維護(hù)之后,對開發(fā)者意味著什么? 根據(jù)官方報道,這意味開發(fā)者可以繼續(xù)使用兩個舊版本繼續(xù)開發(fā)應(yīng)用。 且去年 12 月份,紅帽宣布為微軟 Windows 環(huán)境提供 OpenJDK 的長期商用支持服務(wù)。此外,紅帽對于 Java 的計劃還包括在未來幾周內(nèi)在 Microsoft 安裝程序中啟動 OpenJDK 并分發(fā) IcedTea-Web,這是 Java Web Start 工具的免費(fèi)軟件實(shí)現(xiàn),用于從 Web 運(yùn)行 Java 應(yīng)用程序。IcedTea Web 將成為 Windows OpenJDK 發(fā)行版的一部分。與此同時,紅帽還領(lǐng)導(dǎo)著 Shenandoah 的開發(fā)。作為一個高性能垃圾收集器,Shenandoah 現(xiàn)在已經(jīng)是 OpenJDK 12 的一部分。 如今針對這一事件,Reddit 上的開發(fā)者也展開了激烈的討論: @rifeid: 這并不奇怪,Red Hat 已經(jīng)是 OpenJDK 6(自 2013 年起)和 OpenJDK 7(自 2015 年起)的維護(hù)者。 然而,更有趣的是,有些人認(rèn)為 Java 在一個大型企業(yè)的手中要比在那些并沒有足夠的資源去維護(hù) OpenJDK 的中小型企業(yè)手中要好得多,此外,也有不少網(wǎng)友對此猜測,更多的 Java 版本維護(hù)將被移出 Oracle,可能轉(zhuǎn)移到 Red Hat 或其他組織下。 @existentialwalri:與其說接管 OpenJDK 8 和 OpenJDK 11 項目的是 Red Hat,倒不如直接挑明說是 IBM。 @shevy-ruby:希望當(dāng)前主流的編程語言不要掌握在幾個大型私有企業(yè)的手中,但目前除了少數(shù)幾種語言之外,趨勢有很大的不同。 |
|