BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Oracle vs Google 裁判で注目される Java API

Oracle vs Google 裁判で注目される Java API

ブックマーク

原文(投稿日:2012/04/23)へのリンク

Oracle と Google の裁判が先週から始まっている。10 億ドルの損害賠償を請求する Oracle 側の主張の中心は,Android で使用されている 37 の Java API が Java プログラム言語の著作権を侵害している,というものだ。これとは別の,Google が 7 件の Java 特許を侵害したとしていた訴訟については,審理開始を前に対象が2件の特許に絞られ,損害請求額も 1,000 万ドル未満になると予想されている。Google は 「API は著作権で保護されない」と主張するとともに,今回の訴訟を,Oracle 自身が Java ベースのスマートフォンプラットフォーム構築に失敗したことへの対応策である,と位置付ける考えだ。

法廷で Oracle (こちら) と Google (こちら) が示した資料から,いくつかの証拠の存在が明らかになっている。2番目のスライド資料も Oracle が提出したもので,Google の初期の Android 戦略 を 2005 年 7 月まで遡って説明している。そこでは Google が Java の重要性を認識していることが明らかにされると同時に,同社が取り得る2つのシナリオが述べられている。ひとつは JVM のクリーンルーム実装を開発して Sun のライセンスを取得すること,もうひとつは OSS として初の J2ME ライセンスを Sun と協議することだ (スライド9)。

冒頭陳述で Oracle は,Android を構築する上で同社の重要技術が盗用されていることを,Google の幹部が当初から認識していた,と主張している。Android 開発者用 Web サイトに掲載された 103,400 行に及ぶ API 仕様が "長年にわたる創造的設計 (years of creative design)" と表現されている,というのその理由だ。

API にどのような要素と名称を含めるのか,Oracle には数多くの選択肢がありました。ごく少数のクラスを除けば,Oracle には特定の要素や名称を含める必然性はなかったのです。

Google の冒頭陳述で同社は,今回の訴訟に関して,Oracle 自身がモバイルプラットフォーム構築に失敗したことへの対応策である,という位置付けを試みている。Oracle の CEO である Larry Ellison 氏は質問に対して,同社が Apple の iPhone に対抗すべく,Java ベースのスマートフォン開発を検討していたことを認めている。"JavaFX を使ってスマートフォンを開発し,Verizon のようなキャリアに課金させる,というアイデアでした。" さらに同社は,Blackberry を開発した Research in Motion や Palm の買収も検討していた。しかし RIM の買収には費用が掛かりすぎ,Palm では競争力に乏しいという判断から,この方針は破棄された。"私たちはこのアイデアを検討しましたが," と Ellison 氏は証言する。"よいアイデアではないと判断したのです。"

Google の CEO である Page 氏の証言は火曜日に始まり,翌日の水曜日まで続いた。そこでのコメントには,メディアの注目を集めるものが2つあった。ひとつは氏が Google の行動について問題がなかったと考えていること,もうひとつは Android が Google にとって "有益ではあるが,それほど重要ではなかった" ということだ。多数の報道が伝えたところによれば,氏は口数が少なく,自身の役割について質問された時には 気まずそうな,もしくは 曖昧 な様子を見せた。また,Oracle が立件に使用した Google 社内資料については,見覚えがないと語ったという。

Oracle は Google について,Java API をライセンスなしで使用している唯一の企業であると主張しているが,これについて Page 氏は,Sun から "ライセンスを取得しているかどうか" 確証がない,と答えている。

証拠のひとつとして Oracle は,2005 年 10 月に Google モバイル担当上級副社長 Andy Rubin 氏が Page 氏に送ったメールを引用している。Oracle はこれを,Android で Java を使用するために Sun にライセンス料を支払う必要があると,当初から Google が認識していた証拠である,としている。

製品をオープンソース化する権利を確実にするためには,ライセンスを取得するべきだと思います。Sun にライセンスと TCK 使用料を支払い,オープンソースコミュニティへのリリースに先立って,私たちの JVM [Java Virtual Machine] が TCK 認定試験をパスしておくことが,断片化を発生させないために必要なのです。製品を市場投入する前には,各メーカも Sun のライセンシとして適切なロイヤリティを支払い,TCK を再度パスしなければならないでしょう。

Sun はモバイル以外の – 同社が明確な収益源を持ってない – 領域においては,すでにオープンソース VM プロジェクトを許可しています。Apache がその例です。

次に Schmidt 氏が Rubin 氏にあてた 2006 年 5 月のメールを取り上げ,Sun と契約を締結できなかった場合に Android が別のソリューションを模索する必要がある,という Google の認識を示すものだ,と指摘している。

Sun との契約はどうすればよいでしょう? この問題を回避するために,Java 以外のソリューションを検討するべきその時(原文ママ)ではないでしょうか?

かつて Sun に在籍し,現在は Google の技術者である Tim Lindholm 氏のメールによると,Google は 2010 年 8 月になっても依然として適当な代案を見出せなかった。このメールに関しては Google が,証言からの除外を求めて強く抵抗している。それによると,

(Larry [Page 氏] と Sergey [Brin 氏] から) Android と Chrome で Java の代案となる技術として何があるか,調査するように厳命されました。多くの技術を調査したのですが,使い物にになるものはありませんでした。私たちの下した結論は,適切な条件下でライセンス交渉を行う必要がある,というものだったのです。

Lindholm 氏はメールを書いたことを法廷で認めたが,Bloomberg のレポート によると,内容を誤解されていると語ったという。Sun から Java のライセンスを購入するように勧める意図があったのか,という Oracle の弁護士 David Boies 氏の質問に対して Lindholm 氏は,"そうではありません。何らかのライセンスを特定したものではありません。" と返答している。

API が著作権で保護できるかという点に関しては Oracle のチーフコーポレートアーキテクトである Edward Screven 氏が,Oracle のビジネスにおける API の重要性を強調した上で,Google が Android のリリースによって Java を "断片化,分裂化させている" としている。

Sun では同僚であった Joshua Bloch (Google) と Mark Reinhold (Oracle) の両氏は木曜日の証言で,API とクラスライブラリについて詳細な議論を行った。Java が API なくしてはほとんど機能しない,という点については同意したものの,Reinhold 氏は Java 言語に必要なクラスの数はごく少数であり,Google による侵害があったと Oracle の言う 37 の API は大部分が含まれていない,と主張した。CNET によると氏は,言語仕様の各ページに著作権表示が含まれている点も指摘している。Google は API が著作権対象外であるという立場を取り続けている。さらに同社弁護人の Dan Purcell 氏は,問題となっている 37 の API のうち 10 については JCP (Java Community Process) メンバによって作成されたものであり,彼らが Sun あるいは Oracle から対価を受け取っていない点を指摘している。

CNET はさらに,Google のエンジニア Joshua Bloch 氏が,Google が Java コードの一部分を Andorid にコピーしたとする Oracle 側弁護士の指摘を認めたとも伝えている。氏が質問を受けたのは,自身が Sun 在籍時に書いた "範囲チェック" を行う9行のコードが Android で使われたか,という点だ。氏が "覚えていません" と返答すると,Jacobs 氏は "範囲チェック" を含んでいる2つのコード,Timsort.java (Android) と Arrays.java (Java) を示した。Block 氏はこの2つがほぼ同じであることに同意して,Sun が著作権を持つコードを Android の開発で使用したことを認めたのだ。Guardian は Bloch 氏が API 設計について "価値ある高尚な技術" と語ったとも伝えて,この発言が "API に著作権が存在することを Oracle が立証する上で重要なものになるかも知れない" という点を指摘している。

Timsort.java の成り立ちには興味深いものがある。このコードは 2007 年の半ばに,Bloch 氏が Python から Java に移植したものだ。当時氏は Android チームに所属していなかった。その後 2009 年になって,Google は このコード を GPL v2 下で Open JDK に寄贈した。なお Google によると,その "範囲チェック" コードは現行バージョンの Android には含まれていないという。

2つのテーマでの審議は金曜日も続けられている。その過程で Oracle の提出した証拠から,Google が Java のライセンス獲得または 言語の権利買収を5年以上にわたって模索していたことが明らかになった。ただし当然のことだが, Google が Java のライセンス獲得を希望していた事実は,それが実際に必要であったことを必ずしも意味するものではない。その点について Google は,Java コードで制約のある部分は Android のコードには使用されていない,と主張している。しかし Oracle は,1,500 万行に及ぶコードベースの中に,この見解と相反する数百行のコードが存在すると言う。前述の範囲チェックがその一部だ。しかし根本的な問題は,Oracle の主張する 37 のAPI が著作権保護の対象であるかどうかだ。業界内で認知されている見解に従うならば,API は著作権の対象にはならない。従ってもし Oracle がこの面で成功を収めることができたならば,それは著作権自体が新たな分野に拡張されたことを示すことになる,というのが一般的な見方だ。これについては, InfoQ の別の記事 でも検証されている。

訴訟は現在継続中で,8 ~ 10 週間程度を要すると想定されている。Android の責任者である Andy Rubin 氏が 今週出廷する証人の中のひとりだ。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

BT