重點文章
如果有基本的編碼知識,應該都知道 Android 系統內含部分 Java 代碼,以作運行應用程式之用,但 Google 這樣「挪用」 Java 有沒有違法? Oracle 控告 Google 挪用 Java API 的官司,今晨有判決了。
今晨,三藩市聯邦法院陪審團對 Oracle 控告 Google 6 年的官司作出裁決,認定 Android 並未侵犯 Oracle 所有的 Java 版權,這宗官司除了令 Android 不致「侵權」,不少開發者以及版權專家也鬆一口氣,不用擔心會受到牽連。
但事情還未完結,Oracle 對判決極不服,認為 Google 是非法複製 Java 核心技術以幫助 Android 打入流動市場,他們會向聯邦法院提出上訴。是次案件因為涉及源代碼,案件非常複雜,例如解釋 API 已經令陪審團頭痛,Google 利用了文件櫃,櫃頂上貼有 java.lang 的名字,籍此說明這只是一些標記,而不是 Oracle 所指的小說標題和中心句等等。
作風比 Sun 保守!Oracle 多個證據指證 Google 侵權!
Oracle 為何要告 Google,原因是 Oracle 聲稱 Google「挪用」了 Java API 開發 Android 並獲得龐大利潤,對 Oracle 造成嚴重造失,在 2010 年發動官司要求賠償 90 億美元。當時 Java 仍然屬於 Sun 持有,Sun 對 Java 政策比現在的 Oracle 開放,因此當時希望打入手機市場 Google 很順利地以 Java API「走捷徑」開發 Android 系統之外,你還可以看到 SONY(包括 SONY Ericsson)、Blackberry、Samsung、Sharp、Motorola,都有用 Java API 製作軟件甚至韌件。因此,整場官司看上去就是 Oracle 的一場維權官司,但事實上官司的判決會直接令開發者是否能繼續使用 Java API 開發軟件和韌件。
Oracle 的代理律師為了打贏 Google,曾提出 4 個合理使用元素:商業、創造性、可持續以及是否對市場構成傷害,他們舉了不少例子,例如 Android 的盈利高達 420 億美元,手機激活數量龐大等等,而且他們在 Android 內裡發現非法複製代碼等等(即使 Android N 已改用 OpenJDK),而且其 Java API 執行的目的與 API 一模一樣,直指 Android 代碼之中有 23%「是 Oracle 寫的」。
Google 不同意,他們認為自由使用 API 是業界通行的慣例,但在 Oracle 發動訴訟前數日他們曾電郵 Google 的 Andy Rubin,裡面提到他們嘗試協商 Java 授權問題,而且尋找過替代方案,其中一封更列明 java.lang 是受版權保護的,而且有編碼工程師要求源代碼多刪除幾個 J,成為了不利的證據。
Java 開源已久!侵權難指控!
相反,對 Oracle 來說,他的最大問題就是以前持有 Java 的 Sun,前 Sun CEO Jonathan Schwartz 卻站在 Google 一邊,而且明確表示使用 Java API 是可以的。Java 在 2006 年開放了原始碼,推出 Open JDK 以及 GNU 公眾授權,開源味濃。
換言之,Oracle 買了一個開源的 Java (連同 Java API),卻控告一個使用 Java API 的開發者,這理由根本不成立的,結果 Oracle 的 Java API 成為一宗維權失敗的案例,也是開源編碼的一場勝利。