アカウント名:
パスワード:
それにしても今回の判決だとOpenJDKの存在やJavaそのものをネイティブコンパイルするGCJも今後ヤバイ展開になるって事だね。特にGCJはAndroidと同じレベルでヤバイだろ。(公式のJavaVMと互換がないのにAPI互換があるというところで)
やはり同じレベルでヤバいんじゃないかと思われるものとして、Microsoft J#がありますね。サポートされているクラス ライブラリ [microsoft.com]
Visual J# は、Visual J++ 6.0 に含まれていた JDK レベル 1.1.4 のほとんどのパッケージと同等の機能を持つクラス ライブラリをサポートするように設計されています。JDK レベル 1.2 の機能に相当する機能をサポートしているクラスもあります。
J#はもうオワコンなので、あんまし影響はないかもしれませんが(^^;)
Microsoftはライセンスで揉めたから、どこまでがOKでどこからがNGだと確認したうえで、Javaと同じなのはライセンスをとっていた1.1.4までになっていて、それ以降は「似て非なるAPI」になってるんでしょう。
なぜ、J++/J#がこんな仕様になったのか、Googleがちゃんと理解してなかったか、インターネット時代の企業らしく「やったもん勝ち」と思ったのか...
えっと、それは違うのでは?
SunがMicrosoftを訴えたのは、Microsoft JVMがJDK 1.1のAPIを正しく実装していなかった(互換性が低かった)にも拘わらず、IE上でSun製Java VMの代替物として動作していたから、ですよね。そのせいで、当時のJavaアプレット開発者は両方のVMで動作するよう注意しなければならなかった上、JDK2.0の新機能も(MS JVMが実装していないので)使えない、という状態だったので……。
Sunが問題としたのはJavaアプレット実行環境の非互換性ですから、元からバイナリの異なるJ#は(あの訴訟に関しては)対象外だと思いますよ。少なくとも、当時のSunは「APIにも著作権が及ぶ」などという主張はしていなかったはずですし(^^;)
いやいや、1.1自体はライセンスされていたから、APIの著作権を主張はしないでしょう。裁判自体は「ライセンス通りに実装していない」だから、当然、著作権でもめる必要はない。Microsoftと揉めたのは"JNI"(とDelegate)の部分ですから、両方のVMで動作を注意する必要があれば、それはJ++製でWindows固有のものになります。アプレットでは(最初からJNIなんて使うべきでないので)PureJavaで作っていればいい。(と解説されていた)
言いたいのは、「Microsoftが1.1までしかSunからライセンスを受けてないので、2.0以降はAPIの構造はコピーしなかった」というこ
Microsoftの思惑は、ちょっと分からないですが……。(想像はいくつか浮かびますけど、憶測以上のものにはなりそうもないので)
当時のSun側に関しては、特許及び著作権で他者を縛るような意図はなかったんじゃないかな、と私は認識しています。少なくとも、James Gosling氏は「ソフトウェア特許訴訟はSunのDNAにそぐわない」とおっしゃってますし、氏のブログ記事 [nighthacks.com]でも今回の件に憂慮を示していますから。
おっと、書き忘れましたが、JNIの件に関しては私の記憶違いでした。JavaアプレットではなくJavaアプリケーションの方ですね。私はJNIやJ/Directを使ったことがないので、すっぱり記憶から抜け落ちてました。すみません(^^;)
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
最初のバージョンは常に打ち捨てられる。
実装 (スコア:0)
それにしても今回の判決だとOpenJDKの存在やJavaそのものをネイティブコンパイルするGCJも今後ヤバイ展開になるって事だね。
特にGCJはAndroidと同じレベルでヤバイだろ。(公式のJavaVMと互換がないのにAPI互換があるというところで)
Re: (スコア:1)
やはり同じレベルでヤバいんじゃないかと思われるものとして、Microsoft J#がありますね。
サポートされているクラス ライブラリ [microsoft.com]
J#はもうオワコンなので、あんまし影響はないかもしれませんが(^^;)
Re: (スコア:0)
Microsoftはライセンスで揉めたから、どこまでがOKでどこからがNGだと確認したうえで、
Javaと同じなのはライセンスをとっていた1.1.4までになっていて、それ以降は「似て非なるAPI」になってるんでしょう。
なぜ、J++/J#がこんな仕様になったのか、Googleがちゃんと理解してなかったか、
インターネット時代の企業らしく「やったもん勝ち」と思ったのか...
Re:実装 (スコア:1)
えっと、それは違うのでは?
SunがMicrosoftを訴えたのは、Microsoft JVMがJDK 1.1のAPIを正しく実装していなかった(互換性が低かった)にも拘わらず、IE上でSun製Java VMの代替物として動作していたから、ですよね。
そのせいで、当時のJavaアプレット開発者は両方のVMで動作するよう注意しなければならなかった上、JDK2.0の新機能も(MS JVMが実装していないので)使えない、という状態だったので……。
Sunが問題としたのはJavaアプレット実行環境の非互換性ですから、元からバイナリの異なるJ#は(あの訴訟に関しては)対象外だと思いますよ。
少なくとも、当時のSunは「APIにも著作権が及ぶ」などという主張はしていなかったはずですし(^^;)
Re: (スコア:0)
いやいや、1.1自体はライセンスされていたから、APIの著作権を主張はしないでしょう。
裁判自体は「ライセンス通りに実装していない」だから、当然、著作権でもめる必要はない。
Microsoftと揉めたのは"JNI"(とDelegate)の部分ですから、両方のVMで動作を注意する必要があれば、それはJ++製でWindows固有のものになります。
アプレットでは(最初からJNIなんて使うべきでないので)PureJavaで作っていればいい。(と解説されていた)
言いたいのは、「Microsoftが1.1までしかSunからライセンスを受けてないので、2.0以降はAPIの構造はコピーしなかった」というこ
Re:実装 (スコア:1)
Microsoftの思惑は、ちょっと分からないですが……。
(想像はいくつか浮かびますけど、憶測以上のものにはなりそうもないので)
当時のSun側に関しては、特許及び著作権で他者を縛るような意図はなかったんじゃないかな、と私は認識しています。
少なくとも、James Gosling氏は「ソフトウェア特許訴訟はSunのDNAにそぐわない」とおっしゃってますし、氏のブログ記事 [nighthacks.com]でも今回の件に憂慮を示していますから。
Re:実装 (スコア:1)
おっと、書き忘れましたが、JNIの件に関しては私の記憶違いでした。
JavaアプレットではなくJavaアプリケーションの方ですね。
私はJNIやJ/Directを使ったことがないので、すっぱり記憶から抜け落ちてました。すみません(^^;)