IBM和Oracle惺惺相惜 結(jié)成OpenJDK同盟
編者:Oracle-IBM® OpenJDK 同盟對(duì)整個(gè) Java™ 行業(yè)產(chǎn)生漣漪效應(yīng),這對(duì)于 Java 生態(tài)系統(tǒng)的健康發(fā)展影響如何,評(píng)論人士對(duì)此褒貶不一??v觀各種觀點(diǎn)評(píng)述,前 JavaWorld 編輯 Athen O'Shea 的評(píng)論直達(dá)問(wèn)題本質(zhì):這對(duì)于 Project Harmony、JCP 、開(kāi)源的未來(lái)以及 Java 平臺(tái)上的基于開(kāi)放標(biāo)準(zhǔn)的開(kāi)發(fā)究竟會(huì)產(chǎn)生什么影響。
IBM 和 Oracle 于 10 月 11 日發(fā)表聯(lián)合公告,他們將 共同努力推進(jìn) OpenJDK 項(xiàng)目,這讓很多人感到驚訝。很多評(píng)論員都同意這樣的觀點(diǎn),即這項(xiàng)舉措通過(guò)兩家大公司的聯(lián)合,將重新定義 Java 生態(tài)系統(tǒng),并且 對(duì) Java 技術(shù)的未來(lái)來(lái)說(shuō),是個(gè)好消息。
Javalobby 投票 中 60% 以上的受訪者(***統(tǒng)計(jì)有 600 人)稱,他們認(rèn)為 IBM 協(xié)助 OpenJDK 項(xiàng)目的決定有益于 Java 技術(shù)。通過(guò)決定在 OpenJDK 上合作開(kāi)發(fā),這兩家公司成功地 停止了關(guān)于 IBM 主導(dǎo)的 Java 分支的投機(jī)行為,這對(duì)數(shù)十億美元的 Java 產(chǎn)業(yè)來(lái)說(shuō)也具有同樣的意義。除此以外,還有一些私下的評(píng)論,Eclipse Foundation 的 Mike Milinkovich 說(shuō),“我們又可以回到專心開(kāi)發(fā)創(chuàng)新中了。”
Oracle-IBM 公告對(duì)于這個(gè)快速發(fā)展的行業(yè)來(lái)說(shuō),也會(huì)成為一個(gè)艱難的選擇。從有著長(zhǎng)期技術(shù)投資的跨國(guó)企業(yè)到小型公司和個(gè)人,都要決定是否繼續(xù)在 Java 平臺(tái)開(kāi)發(fā)軟件。本文將一一展示參與其中的,或受 Oracle 和 IBM 決策影響的關(guān)鍵因素和參與者。在每一節(jié)的***,還有介紹此同盟方方面面情況的 web 資源鏈接。
OpenJDK 作為 Oracle-IBM 項(xiàng)目
OpenJDK 是 Java 平臺(tái)的開(kāi)源參考實(shí)現(xiàn);它包含 Java SE、Java 語(yǔ)言、JDK 和 JRE。 OpenJDK 規(guī)范要求由 Java Community Process 投票決定。即將到來(lái)的投票將決定新提議的 OpenJDK 路線圖 是否能被 JCP 執(zhí)行委員會(huì)接受。
Java Platform Group 的總架構(gòu)師 Mark Reinhold 表示,IBM 的 OpenJDK 工程師可能 “主要負(fù)責(zé)類庫(kù)開(kāi)發(fā),并與我們其中一部分同事合作,構(gòu)建一個(gè)通用源平臺(tái),以便能使用頂層多 Java 虛擬機(jī)。” 兩家公司很有可能會(huì)在各自的 JVM 上獨(dú)立工作, 會(huì)看到 “很多不同企業(yè)的功能差異”,他說(shuō)。
有贏,有輸
選擇 IBM 成為 OpenJDK 合作伙伴明顯是 Oracle 的戰(zhàn)略決策。Oracle 的軟件業(yè)務(wù)副總裁 Adam Messinger 說(shuō),這一舉措反映出兩家公司都想要加速解決 快速發(fā)展的多核硬件 帶來(lái)的挑戰(zhàn)。“這次合作反映了我們兩家都面對(duì)的戰(zhàn)略現(xiàn)實(shí),”他說(shuō)。
OpenJDK 同盟 讓 Oracle 不再隔絕,RedMonk 的 Stephen O'Grady 說(shuō),成功地使它在 Java 生態(tài)系統(tǒng)中的地位得以確認(rèn)并提升:
如果 Oracle 想要挑選一個(gè) Java 業(yè)務(wù)方面的供應(yīng)商合作,很容易選擇 IBM。除了企業(yè)間的盲目信任 — 比如,“購(gòu)買 IBM 不會(huì)被拋棄” — 藍(lán)色巨人在開(kāi)發(fā)人員中有著讓人羨慕的聲譽(yù)。而現(xiàn)在 IBM 公開(kāi)與 Oracle 站在一邊,后者維持此生態(tài)系統(tǒng)的任務(wù)變得簡(jiǎn)單得多。
這對(duì) IBM 來(lái)說(shuō),也是一項(xiàng)好的舉措,即使顯然會(huì)犧牲掉 Harmony。將工程資源從 Project Harmony 轉(zhuǎn)換到 OpenJDK,IBM 加強(qiáng)了對(duì) Java 技術(shù)的影響,盡管會(huì)明顯 處于 Oracle 掌控之下。兩家公司表示,將共同努力以確保作為 Java 平臺(tái)發(fā)展的主要標(biāo)準(zhǔn)組織的 JCP 的地位被強(qiáng)化 并提高。
還有沒(méi)解決的問(wèn)題,Project Harmony 如何處理,Oracle-IBM 同盟對(duì) Google(有 Android 合作協(xié)議) 意味著什么,OpenJDK 同盟(以及 Google 的回應(yīng))會(huì)對(duì) Java 技術(shù)行業(yè)的其他廠商意味著什么,JCP 將如何變革,變革到什么程度。
深入閱讀:OpenJDK 和 Oracle-IBM 決策
OpenJDK 委員會(huì)成員 大多數(shù)是 Oracle(以前是 Sun)和 IBM 員工,其余是 Google 和 Red Hat 的開(kāi)發(fā)人員。(Oracle Java/FOSS 代表 Dalibor Topic 還有更多關(guān)于該話題的講述。)
IBM 開(kāi)放系統(tǒng)和 Linux 業(yè)務(wù)副總裁 Bob Sutor 講述 IBM 這項(xiàng)決策的理由。他解釋既有有利因素,IBM 會(huì)加強(qiáng)開(kāi)發(fā)利用,以確保 Java 和 JCP 的未來(lái)發(fā)展,也有不利因素,這項(xiàng)決策會(huì)妨礙 Project Harmony。
Stephen O'Grady 從分析員的視角解讀 Oracle-IBM 的決策對(duì)整個(gè) Java 生態(tài)系統(tǒng)的漣漪效應(yīng), 包括猜測(cè)選擇 IBM 作為 OpenJDK 合作伙伴為什么 對(duì) Oracle 來(lái)說(shuō)是好的舉措。
Mark Reinhold 解釋 新的 OpenJDK 路線圖 及其分裂的 JSR 背后的思考。
Project Harmony 怎么辦?
IBM 曾經(jīng)是 Project Harmony,這一 Apache Software Foundation 所開(kāi)發(fā)和許可的開(kāi)源 Java 運(yùn)行時(shí)的 長(zhǎng)期支持者。對(duì)于某些 Java 社區(qū),Harmony 曾被看作是官方 Java 平臺(tái)實(shí)現(xiàn)的替代選擇,這種需求現(xiàn)在仍然存在。相對(duì)于 獨(dú)立的 Java 實(shí)現(xiàn)和許可,Harmony 還會(huì)被看作是對(duì) Oracle 的地位的檢驗(yàn)。
IBM 的開(kāi)源和 Linux® 業(yè)務(wù)副總裁 Bob Sutor 在 總結(jié) IBM 的決定,讓工程師從 Project Harmony 轉(zhuǎn)向 OpenJDK 時(shí),稱之為務(wù)實(shí):
很明顯,先是 Sun,然后是 Oracle,從來(lái)沒(méi)有對(duì) Java、Java SE TCK 做過(guò)認(rèn)真的測(cè)試和驗(yàn)證,以便能在 Apache 中使用。我們不同意這項(xiàng)決策,但它不是我們做出的。所以與其繼續(xù)將 Harmony 開(kāi)發(fā)成非官方的、未驗(yàn)證的 Java 產(chǎn)品,還不如調(diào)轉(zhuǎn)方向,努力開(kāi)發(fā) OpenJDK。
這項(xiàng)舉措讓 Harmony 的未來(lái)很不確定,此項(xiàng)目是否及如何進(jìn)展還 掌握在開(kāi)發(fā)人員手中。IBM 的決策 “對(duì) Harmony 來(lái)說(shuō)不是好事”,Harmony 創(chuàng)造者和 Apache 董事會(huì)成員 Geir Magnusson 說(shuō)。“但從長(zhǎng)遠(yuǎn)來(lái)看:對(duì)于 Apache Foundation,由社區(qū)決定做什么。我們按照社區(qū)所希望的做。”
一開(kāi)始的反應(yīng)是 “玩完了(不止是 Harmony)”,后來(lái)變?yōu)榻ㄗh Project Harmony 的一部分可以轉(zhuǎn)到 OpenJDK 中。有人推測(cè)此平臺(tái)也可能在另一贊助商的支持下繼續(xù)發(fā)展;這就是,Google。
深入閱讀:Project Harmony,過(guò)去和未來(lái)
Ryan Paul,在 Ars Technica 中,給出準(zhǔn)確的 Harmony 許可歷史的概述;Sun 的,現(xiàn)在是 Oracle 的影響,使用領(lǐng)域的限制;以及 IBM 直到現(xiàn)在在領(lǐng)導(dǎo)平臺(tái)方面的地位。
Stephen Colebourne,作為 ASF 成員,對(duì) Sun/Oracle 兩方關(guān)于 IBM 的決定的許可爭(zhēng)論和結(jié)果 觀點(diǎn)總結(jié)。
據(jù) Harmony 創(chuàng)造者 Geir Magnusson 所說(shuō),Harmony 的未來(lái)仍 掌握在開(kāi)發(fā)人員手中。
很多人,包括 DZone 的 James Sugrue,都想知道,在開(kāi)發(fā)出 Android 中使用的 Harmony 庫(kù)之后,Google 對(duì) Harmony 的未來(lái)會(huì)起什么作用 。
Google、Android,和新冷戰(zhàn)理論
雖然 Google 不是惟一一個(gè)受 Oracle-IBM 決策影響的 Java 技術(shù)廠商,但也許是失去最多的廠商,也可能是得到最多的,如下文所述。Oracle 在 8 月對(duì) Google 展開(kāi)的訴訟(聲稱對(duì) Android 相關(guān)的多項(xiàng)專利權(quán)和版權(quán)侵權(quán))是對(duì)開(kāi)源精神的打擊,而開(kāi)源精神是 Java 生態(tài)系統(tǒng)健康發(fā)展的土壤。這項(xiàng)公告發(fā)表后,Java 分支的呼聲 日益高漲,有人擔(dān)心原先處在 Java 技術(shù)這一方的開(kāi)發(fā)人員將無(wú)路可退。
Project Harmony 沒(méi)有一個(gè)強(qiáng)大的贊助廠商 對(duì) Google 來(lái)說(shuō)可能是壞事(Android 架構(gòu)在 Harmony 子集之上);但也許會(huì)是好事,如果 Google 決定 自己開(kāi)發(fā) Project Harmony。
無(wú)論 Google 做出什么決定,將不會(huì)僅僅影響 Android,而且會(huì)影響廠商在自己的實(shí)現(xiàn)中如何看待和利用 Java 技術(shù)。而且,正如有些人指出的,我們也許會(huì)進(jìn)入一個(gè) 新的冷戰(zhàn)時(shí)代 — 與作為局外人的 Google,而不是 Oracle。
深入閱讀: Google 下一步是什么
Charles Nutter 在其 Oracle-Google 訴訟案總結(jié)中提到了所有要點(diǎn)以及 對(duì)整個(gè) Java 生態(tài)系統(tǒng)的漣漪效應(yīng)。
Greg Luck 在 10 月 4 日博客文章 “分化 Java 的時(shí)間到了么” 中提出 Java 分化的猜想。
Googling Google 的博客作者 Christopher Dawson 在談?wù)?Google 選擇對(duì)抗還是合作時(shí)說(shuō)到 Google 仍會(huì)保持 Google 的風(fēng)格。
Google、IBM、Oracle 和 Red Hat,都是 OpenJDK 項(xiàng)目主導(dǎo)者。
變革 JCP
Oracle 和 IBM 已聲明,他們?nèi)詫⒗^續(xù)努力變革并加強(qiáng) JCP,以確保它繼續(xù)成為定義 Java 平臺(tái)和語(yǔ)言規(guī)范的標(biāo)準(zhǔn)組織。Oracle 代表已 確認(rèn) JCP 的批準(zhǔn)對(duì) Java SE 開(kāi)發(fā)必不可少,從 JavaOne 宣布的修訂的 OpenJDK 路線圖 即將進(jìn)行的投票 開(kāi)始。
Bob Sutor 曾說(shuō) IBM 希望看到 “JCP [...] 中有 長(zhǎng)效變革,以使其更民主、更透明、更開(kāi)放”。 有些 Oracle 代表也 指出 JCP 變革 不僅在執(zhí)行委員會(huì)的討論之下,但他們相信對(duì)于此提議,社區(qū)會(huì)很高興。
時(shí)間將會(huì)證明執(zhí)行委員會(huì),以及更廣泛的社區(qū),將會(huì)對(duì) JCP的改進(jìn)建議反響如何。盡管如此,據(jù) Apache Software Foundation 成員 Stephen Colebourne 所說(shuō),即將到來(lái)的 JCP 投票將會(huì)是 初步的測(cè)試;不止是對(duì)修訂的 OpenJDK/Java 7 路線圖;也會(huì)看出 Red Hat、VMWare、SAP 和 Google 等廠商 對(duì) Oracle-IBM 同盟反響如何。Colebourne 還猜測(cè)可能會(huì)產(chǎn)生 JCP 決裂,Oracle 獲得制定 Java 核心(Java SE、ME 和 JVM,按 Colebourne 所說(shuō))的規(guī)范的權(quán)利,而輔助庫(kù)由與廠商獨(dú)立的 JCP 單獨(dú)管理。
深入閱讀:JCP 變革和開(kāi)源 Java
Oracle 代表 Adam Messinger 和 Henrik Stahl 都指出,JCP 談判會(huì)讓 Java 社區(qū)很高興。
關(guān)于 JCP 執(zhí)行委員會(huì)成員 如何看待 JCP 變革,見(jiàn) 2010 年 2 月 DZone 頻道評(píng)論 。
Stephen Colebourne 曾提出,在即將到來(lái)的 JCP 投票中,將會(huì)看出對(duì) Oracle-IBM 決策,執(zhí)行委員會(huì)成員的立場(chǎng)。(JAXmag 在線的 Jessica Thornsby 報(bào)道。)
Colebourne 還提出,會(huì)出現(xiàn) JCP 決裂。
更加健康的 Java 生態(tài)系統(tǒng)?
Oracle-IBM 同盟被廣泛看作是 Java 技術(shù)的勝利:它加速了 OpenJDK 項(xiàng)目,并且能讓更多的工程師開(kāi)展合作和資源共享。這一舉措在 OpenJDK 這一基礎(chǔ)項(xiàng)目上聯(lián)合了兩家在業(yè)界影響巨大的公司的能力(包括技術(shù)投入和財(cái)政投入)。這也有效地中止了關(guān)于 IBM 主導(dǎo)的 Java 分支的投機(jī)行為,那種行為對(duì) Java 行業(yè)的發(fā)展弊大于利。
IBM 的新興技術(shù)業(yè)務(wù)副總裁 Rod Smith 的評(píng)論強(qiáng)調(diào)其對(duì) Java 生態(tài)系統(tǒng)、開(kāi)發(fā)者、供應(yīng)商以及行業(yè)的穩(wěn)定作用。“這會(huì)消除 Java 未來(lái)的不確定性,”他說(shuō)。Danny Coward(以前就職于 Sun)將此稱贊為 “競(jìng)合的新時(shí)代”, Oracle 的 Adam Messinger 說(shuō)此舉將 加速 Java 平臺(tái)的創(chuàng)新。
穩(wěn)定是好的,創(chuàng)新也是好的;這兩者對(duì)一個(gè)健康的 Java 生態(tài)系統(tǒng)來(lái)說(shuō)都是必不可少的。而當(dāng)穩(wěn)定性建筑在巨人的肩膀上,Java 行業(yè)的創(chuàng)新歷史上曾是 破壞性的力量:這是一個(gè)小廠商和獨(dú)立、松散的網(wǎng)絡(luò)化開(kāi)發(fā)者有時(shí)比跨國(guó)企業(yè)發(fā)揮作用更大的競(jìng)技場(chǎng)。正是這兩股大的利益集團(tuán)之間的相互作用,使得 Java 行業(yè)既健康又誠(chéng)實(shí),充滿希望,欣欣向榮。
據(jù) Fabrizio Giudici(和 Gianugo Rabellino)所指出的,有個(gè)最終的問(wèn)題,即 自由的問(wèn)題;Free Software Foundation 所定義 自由,開(kāi)源許可所編寫(xiě)的 自由。這個(gè)問(wèn)題將還會(huì)決定 Java 的未來(lái)是建筑在一個(gè),兩個(gè)還是多個(gè)核心平臺(tái)上。
深入閱讀:怎樣成就一個(gè)更加健康的 Java 生態(tài)系統(tǒng)?
Fabrizio Giudici 在關(guān)于自由定義的討論中 評(píng)估負(fù)面影響的程度 — Rabellino 的 開(kāi)源與開(kāi)源標(biāo)準(zhǔn) — OpenJDK 分支是否值得繼續(xù)存在。
在 Oracle-IBM 公告 10 天之前, James Governor 稱破壞性創(chuàng)新(和開(kāi)源管理)是 Java 技術(shù)未來(lái)發(fā)展的 規(guī)則,不可避免。
【編輯推薦】