web-dev-qa-db-ja.com

AdoptOpenJDKとRed Hat OpenJDK for Windowsの技術的な違い

Red Hatは、開発専用のWindows用の Red Hat OpenJDK 8 を提供しています(登録が必要です)。 AdoptOpenJDKは、Windows用のOpenJDK 8ビルド( AdoptOpenJDK 8 Windows )を制限なしで提供します。

同じバージョン/更新(8u181など)を使用する場合、2つのパッケージ間に技術的な違いはありますか? 「技術的な違い」とは、クラス/関数の欠落、異なるデフォルトJVM設定などを意味します。

10
koe

Red Hatは、AdoptOpenJDKおよび他のオープンソースOpenJDK 8ビルドとまったく同じライセンスで、- GNU GPL v。2 with classpath exception のOpenJDK 8 Windowsバイナリを提供します。 「開発の使用」に関するすべての制限は、Red Hatから購入できるサブスクリプション(サポート)にのみ関連しています。

これらのビルドはすべて [〜#〜] tck [〜#〜] をパスするため、Red Hat OpenJDK 8 for Windowsと他の言及されたビルドとの技術的な違いはごくわずかです。一般的に、Red Hatビルドは、RHELおよびCentOSに含まれるOpenJDK 8パッケージにできるだけ近い動作を維持しようとしています。

違い:

  1. RH OpenJDK 8ビルドは、RHEL/CentOSで使用されるOpenJDK RPMパッケージのソースから実行されます。これらのソースは通常 pstream sources に非常に近いですが、いくつかの変更が含まれており(以下のポイントを参照)、事前にバグ修正(RPMパッチ)が含まれている場合があります。 RHEL/CentOSの変更は、一般公開されている CentOS RPMのレポ で追跡できます

  2. RH OpenJDK 8には Shenandoahガベージコレクター が含まれています

  3. RH OpenJDK 8は、アップストリームjdkソースのツリーに含まれるこれらのライブラリの(部分的な)ソースの代わりに、依存ライブラリ(zlib、giflib、libjpeg-turbo、libpng、nss)にRHEL/CentOSのソースを使用します

  4. RH OpenJDK 8のElliptic Crypto実装には、最も一般的な3つだけが含まれています 楕円曲線 -NIST P-256、NIST P-384、およびNIST P-521。

  5. RH OpenJDK 8は、RHEL/CentOSからのルートCA証明書のセットを使用します

  6. RH OpenJDK 8はわずかに新しいタイムゾーンデータを使用する場合があります-RHEL/CentOSから取得されます

  7. RH OpenJDK 8にはすべてのJavaソースコードがsrc.Zipファイル(jdkコードの閲覧を可能にするためにIDEによって使用される)内に含まれます)、これらのソースのかなりの部分はアップストリームビルドに含まれません

  8. RH OpenJDK 8にはデモとサンプルは含まれていません

  9. RH OpenJDK 8にはフォントファイルのセットが含まれています

  10. rH OpenJDK 8のすべてのネイティブバイナリはRH証明書によって署名されます

  11. RH OpenJDK 8インストーラーには JavaFX実装 が含まれます

  12. RH OpenJDK 8インストーラーには WebStart実装 が含まれます

出典:RHでOpenJDK Windowsビルドに取り組んでいます。

18
alexkasko

私が見つけたAdoptOpenJDKの主な違いは、2つの異なるVM実装、私が見つけたHotSpotはOracleの実装と同等の遅いパフォーマンスを持っているか、はるかに効率的なEclipse Open J9 jvm実装のいずれかを選択できることですこれは、現在オープンソース化されている以前のIBM SDK 8に基づいています。

  1. AdoptOpenJDK Eclipse Open J9-1分
  2. IBM SDK 8(商用ライセンス)-1分
  3. AdoptOpenJDK OpenJDK8 with HotSpot-7分
  4. Oracle Java HotSpot(TM)(ビルド1.8.0_181-b13)-11分

したがって、OracleのJVMをオープンソース化すると、Oracleの商用JVMよりも優れた結果が得られたと思いますが、IBMのJDKとOpen J9をオープンソース化すると、コンパイル時間が1桁速くなります(私のプロジェクトの場合)。

1

これは、redhatが提供するopenjdkディストリビューションをサブスクリプションなしで本番環境で使用できるとは思えません。

https://developers.redhat.com/products/openjdk/download/ したがって、このページでは、開発専用です。ソース: https://access.redhat.com/solutions/3116731

0
tarunk