web-dev-qa-db-ja.com

ibmjdkとOraclejdkの違いは何ですか?

私はAIXサーバーで実行されるJavaコードを書いています。IBMのJDKとOracleのJDKの違いと、JDKが同じクラスを持っているかどうかを知りたいのですが。IBMはJDKには、Oracle JDKに存在するすべてのクラスがありますか?

2つのJDKの違いを説明するIBMドキュメントはありますか?

11
PapaSmurf

OracleとIBMのJavaランタイムの最大の違いは、独立したJava仮想マシン(JVM)とジャストインタイム(JIT)コンパイラの実装があることです。 IBMは、z/OS(メインフレーム)、AIX、Linux onPowerプロセッサーなどのプラットフォームでJavaプログラムを実行できる独自のJVMとJITを構築する必要がありましたが、他のJava実装では実行できませんでした。実行します。 JVMとJITはJavaランタイム内部の一部であり、Javaプログラムの記述方法を変更するべきではありません。目標は互換性を持たせることであるため、OracleJDKとIBMの大きな違いをリストしたドキュメントはありません。他の人がすでに言っているように、彼らは両方とも同じ標準仕様とJavaAPIを実装しています。とは言うものの、IBMからのJavaドキュメントがたくさんあります。

http://www.ibm.com/developerworks/Java/jdk/docs.html

プログラマーとしてのユーザーに影響を与える可能性のある領域の1つは、IBM JREに独自のセキュリティー・プロバイダーの実装があることです。これは、別の方法で構成する必要がある場合があります。これらはセキュリティガイドに記載されています-Java8バージョンはここにあります:

http://www.ibm.com/support/knowledgecenter/SSYKE2_8.0.0/com.ibm.Java.security.component.80.doc/security-component/introduction.html

9
W. Smith

私はJava 1.6を使用し、Oracle(JRockit)、IBM、およびOracle/SunJDKにデプロイする環境で作業しています。

3つは非常に互換性があります。時折の違い(JAXWSの起動動作など)を除けば、問題はほとんど発生しません。

1つのJDKが他のJDKにあるものを見逃しているという大きな穴はありません。

3
kiwiron

GBKエンコーディングの大きな違いに遭遇します。 ibm jvm GBKはibm936の略ですが、openjdkまたはOraclejdkはCP936です。 CP936は、windows-936として知られている、実際のGBK標準です。したがって、奇妙なGBKの問題に対処すると、次のことがわかります IBMソリューション

1
fartpig