Java 規格投票落敗 Apache 軟體基金會退出 JCP 執委會
Created at Tuesday, 14 December 2010 08:00 Last Updated on Wednesday, 12 January 2011 19:38
Written by 謝良奇/編譯
Java Community Process (JCP) 在執行委員會投票表決下,通過了 Java 7 與 Java 8 的技術規格。Java 7 的 JSR-336 和 Java 8 的 JSR-337,同樣獲得 12 票贊成與 3 票反對。其中投下反對票之一的 Apache 軟體基金會 (Apache Software Foundation,ASF),更在不久後宣佈退出 JCP 執行委員會。
新 Java 7 和 Java 8 釋出將包含新模組化與生產力改進等多項技術創新。儘管獲得多數執行委員會成員的支持,其中卻有若干爭議。最主要的一點正是來自 Apache 軟體基金會。Apache 軟體基金會關切的,並非 Java 7 與 8 的技術內容,而是 Oracle 對於新版 Java,究竟採用的授權為何。
投下反對票的 Google 和 Apache 軟體基金會表示,他們的決定和 Oracle 計畫的技術內容無關,而是要反對 Oracle 加諸的使用範圍和授權限制。Apache 軟體基金會成員 Geir Magnusson Jr. 表示,這些 JSR 與 Oracle 提供的授權相衝突。Java 7 和 8 技術相容性套件 (Technology Compatibility Kit,TCK) 的授權排除了著眼於嵌入式系統的實作者。
Apache 關注的另一項議題是 TCK 中阻礙獨立實作進行散佈的限制。來自 Apache 軟體基金會的 Apache Harmony 專案正是此一問題的焦點。Oracle 在毫無解釋的情況下,拒絕給予 Harmony 使用 TCK 的授權。意味著 Apache 軟體基金會無法讓 Harmony 此一獨立的 Java SE 實作,進行官方標準的相容性測試。
Google 的 Android 行動作業系統在其 Dalvik Java 虛擬機器中,使用了部份的 Harmony。Oracle 宣稱 Android 侵害 Java 專利而正對 Google 提出控告。
事實上,這不是 Apache 首次對 TCK 授權感到不滿。有關 TCK 授權條款的爭議,要回溯到 Sun 身上。當 Sun 在 2007 年將其大部分 Java 技術以開放源碼的 GPL 重新授權時,卻在 Java 的相容性測試套件上維持使用私有授權。
Java 規格中包含了爭議的使用範圍條款,要求所有 Java 實作都必須通過 TCK 的測試。反對人士認為這不僅有違開放源碼的精神,更抵觸了所有參與 Java 發展各方所同意的協議內容。
Apache 軟體基金會過去 10 年一直是 JCP 執行委員會成員,同時也是許多重要且知名開放源碼 Java 專案的來源。該組織明白指出 Oracle 拒絕給予 Harmony 授權,已經不符合 JCP 的管理原則。Apache 軟體基金會並且在日前呼籲其他 JCP 成員投票反對 Java 7 和 8。
在 Apache 軟體基金會下達的最後通牒中,該組織向 Oracle 表示,一旦他們作為 Java 規格時作者的權利,沒有獲得 JCP 執行委員會在其能力範圍內的支持,該組織將會終止與 JCP 的關係。該基金會總裁 Jim Jagielski 曾表示,假如在 Java 7 投票上落敗,該組織將會為了是否為自由使用與授權限制持續奮戰,而面臨艱難決定。
Java 7 與 8 投票表決結果公佈後不久,Apache 軟體基金會果真宣佈退出 JCP 執行委員會。Apache 軟體基金會在聲明中表示,近日的 Java SE 7 投票是 JCP 執行委員會展示,該會有意捍衛 JCP 作為開放規格程序的最後機會。
該基金會表示,他們做出 JCP 並非開放規格程序的結論,而 Java 規格則是一項必須依照規格領導者所挑選的條款,直接從規格領導者取得授權的私有技術。而 Oracle 此一個別實體的商業考量,將持續嚴重地干涉並影響該產業生態圈的透明化管理。
Apache 能讓 Oracle 於最後關頭放行 Harmony ,成為標準 Java 的唯一機會,是盡力爭取 IBM-Apache 和 Harmony 的長期支持者-成為同一陣線。然而,當 Oracle 日前拉攏 IBM 支持 OpenJDK 這套開放源碼 Java SE 後,Apache 退出 JCP 顯然已成了不得不下的一個決定。
如今看來 Java 恐怕將走向分支一途,一方面有 OpenJDK 這套官方的開放源碼 Java,另一方面有 Apache 的 Harmony。外界認為用不了多久,Oracle 也會對 Apache 做出法律行動。最後,或許法庭將會決定,當一切全都由一家公司說了算,這樣的開放源碼專案究竟還有幾分開放可言。
相關網址:
1.Java 7 和 8 在 Apache 反對中通過
https://www.devx.com/architect/Article/461232.Apache 在 Java 決勝投票中輸給 Oracle
https://www.theregister.co.uk/2010/12/07/apache_google_vote_no_oracle_roadmap/3.Apache 基金會退出私有 Java 程序
https://www.zdnetasia.com/apache-foundation-quits-proprietary-java-process-62205130.htm4.Apache 被迫創建 Java 分支
https://www.zdnet.com/blog/open-source/apache-is-being-forced-into-a-java-fork/79455.Apache 退出 JCP 執行委員會
https://www.h-online.com/open/news/item/Apache-resigns-from-the-JCP-Executive-Committee-1151054.html