【崖っぷちのJava】Java APIは誰のもの?オラクルとグーグルの終わりなき争い
■ このスレッドは過去ログ倉庫に格納されています
Javaを巡っては、米オラクル(Oracle)と米グーグル(Google)が何年にもわたって裁判で争っている。複数の争点があるが、最大の争点は「Java APIの著作権」である。Javaが抱える問題を取り上げるこの特集の最後に、両社が争っている裁判の経緯と意味をまとめておこう。
オラクルは2010年1月、Javaの開発元である米サン・マイクロシステムズ(Sun Microsystems)の買収を完了した。そして同年8月、買収により取得したJava関連特許とJava APIの著作権(実際にはごく短いコードの著作権を含む)をグーグルが侵害しているとして、米カリフォルニア州連邦地方裁判所に提訴した。具体的には、グーグルが提供するモバイル機器向けプラットフォーム「Android」がJavaの特許と著作権を侵害しているとした。
取り残されたAndroid
なぜAndroidが問題になったのか。それは、かつて存在していた「Apache Harmony」というオープンソースのJava実装をAndroidが採用していたことに起因する。
Javaは、JCP(Java Community Process)というコミュニティが仕様を策定している。JCPは複数の企業が参加するオープンなコミュニティだ。
JCPで決まった仕様に沿って、各社がJavaを実装する。そうした実装に対してサンが互換性試験を実施し、パスすると「Java」を名乗ることができた。
こうしたJava実装をオープンソースで開発しようという流れが2005年に生まれた。それがApache Harmonyプロジェクトだ。米IBMや米インテル(Intel)といった企業が参加していた。ライセンスとしてはApache Licenseを採用していた。
これに対し、サンもオープンソースのJava実装のプロジェクトを2006年に立ち上げる。「OpenJDK」だ。ライセンスとしてソースコードの公開を義務付けられるGNU General Public License(GPL)を採用している。
ところが、サンとHarmonyプロジェクトの間で2007年、テクノロジー互換キット(TCK:Technology Compatibility Kit)の利用を巡る問題が発生する。TCKは、Java実装がJavaの仕様に準拠しているかどうかを確認するものだ。サンは、GPLを採用する実装にしかTCKの仕様を許さないとしたため、Apache Licenseを採用するHarmonyでは利用できなくなった。これをきっかけにHarmonyは、事実上サンの影響下にあったJCPと激しく対立するようになる。
http://tech.nikkeibp.co.jp/atcl/nxt/column/18/00294/052200005/ いま回路を仕方ないので組んでるけど、linuxも危ないかも 使用まで含めてオープンにならなければ、消える日は近い 最初からC#でやりゃ良かったのに
拗らせた結果、こんな面倒なことに 泥沼を避けるために、JavaベースじゃないOSが必要になるってこと? >>8
OSはJavaとは無関係なので大丈夫
ただ、アンドロイドアプリはほとんどがJavaの実行環境上に作られてるから、そっちはやばい こういうライセンス的にグレーな技術はGoogleはすぐに撤退すると思うけどそうでもないのね。
Javaってそんなに使い勝手良いのかな >>10
AndroidはJavaベース
>>2
LinuxはOSのカーネルだからJavaとは無関係 >>12
AndroidはLinuxだ
Javaはその上で動いてる
ちゃんとネイティブアプリもNDK 使えば作れるぞ >>12
dalvikベースです by google >>10
ありがと。
スマホOSのシェア争いがもう一回見られるのなら楽しみなんだけどw >>15
もうそれはない
デスクトップのWindows、サーバのLinuxに引き続き、
スマートフォンはAndroid(based on Linux)の勝利が確定
次のOSの戦場はIoTでしょう
ただしクラウドのフレームワークの戦いの方が激化するかもしれない >>13
JAVA無しでは、Androidは存在し得ない。 >>17
大抵のアプリはね
ゲームはネイティブだったりC#だったりするし、
最近は普通のアプリでもC#増えてる
AdobeAirは死んだ・・・ >>18
JavaというかKotlinを捨てるなら、もうAndroidごと捨てるわ オラクルの支配下に入った時点でJavaは終わってたんだよ APIは著作権ないんじゃなかったっけ?
昔WindowsのWin32APIでも同じような話あった気がする >>23
まあそうだよね
そしてみんながそう思っていて
オラクルに買い取られたMySQLからも、みんな逃げた こんな揉める前提のJavaをどうして
ググるは使いたがったんだろ javaにすればCもjavaも使えるし、Cよりもコードが素敵にネイティブアプリが作れる唯一の言語だからに決まっているだろ。 自前のGo言語で作れるようにすればいいのに
なんでgoogleはしないの? アプリケーションコードを使い捨てして
コーダーがブチ切れ発狂しない文化を持つ言語つったらVBとJavaくらいのもんじゃん
酷く変化するiOS環境向けアプリの開発言語にobject-Cを充ててたAppleも開発者の不満圧力ヤバスとSwiftとか名前変え継続性を削ぎコードと環境整合に多態性を提供した Java Java だーれのもの
Java あいする Java みんなの みんなの Java 将来的にはGoogle Fuchsiaにするんじゃないの? オラクルじゃなくGoogleがサンを買えばこんな面倒な事になってなかったな
モトローラみたいに知的所有権だけ分捕ってハードウェア部門はすぐ売り払えばいいだけだし >>27
当時は他に選択肢がなかった
今でもあまりない 便利機能というよりほぼ毎回エラーおこすいにしえの召喚陣みたいなイメージ >>35
量子コンピュータにも使われてるからPythonかな >>39
IBMという話はあった。IBMでもおかしなことにはならなかった。 >>38
あれはIoT向けや
ソース読んでみろ
すごく低機能で低リソース機向け JAVAはないほうがよかった。スマホで採用したのは失敗だった。 著作権が問題なら表現方法を変えればいいのでは?
そのためのKotlinなのかもね
KotlinならJavaVMの機能を呼び出す場合はモジュールの機能もパラメーターも戻り値も同じだが書式が違う >>40
ほんとかよ
仮想化技術なんて今どき大したもんじゃないしグーグルなら楽勝だろ >>47
言語選択の失敗はOSの失敗に繋がる
裾野が広い言語を使わないと駄目 特定ベンダーに依存するのはよくない
OracleのJAVAもだけどMicrosoftのC#も >>1を読むだけだとなぜ崖っぷちかわからない件について
GPLかApache Licenseかの問題なら当事者にとっては深刻でも使う方にとってはあんまり関係なくね?
面倒になってくるのは、Oracleが「そもそもうちに無断でJava実装を出すな」と言い出した時だと思うんだが >>52
それだけってなんなんだろ
ベンダーに依存しない言語はどれよって言われたから出しただけだけど 現実的に考えるとベンダーに依存する言語使うしかなさそうだね メジャー言語は規格があるからその範疇ではベンダーロックインはないだろ
でも実務じゃコンパイラとかの環境を使うだろうからその意味ではロックインされてるわな
ちなみにID:GMOT8RRqは知らないみたいだけどC#は既にオープンソース化されてるから自分で環境作ればロックインなんてされずに済むよ >>49
OracleはJavaの仕様策定をやってない >>56
C#はオープンソースになってるライブラリーが少なすぎる >>59
ベンダー依存という観点から言うと
言語処理系だけではどうしようもない >>60
どうしようもないかどうかはケースバイケースだから勝手にやっててくれ なんか買っては息の根を止めるオラクルさん商法が良くわからん ■ このスレッドは過去ログ倉庫に格納されています