注: この質問は 2014 年のものです。Java 11 以降、OpenJDK と Oracle JDK は統合されています。
Oracle と OpenJDK の間には重要な違いはありますか?
たとえば、ガベージ コレクションとその他の JVM パラメータは同じですか?
GC は 2 つ間で動作が異なりますか?
ベストアンサー1
OpenJDK と Oracle JDK はどちらも、現在は Oracle のみによって作成および保守されています。
OpenJDK と Oracle JDK は、TCK (Java Technology Certification Kit) に合格した同じ Java 仕様の実装です。
JDK ベンダーのほとんどは、TCK 互換性を損なうことなく、コンポーネントにいくつかの調整 (主にライセンスされた独自仕様の部品を置き換える / 特定の OS でのみ動作するより高性能なアイテムに置き換える) を加えることで、OpenJDK 上に作成されています。
多くのベンダーが Java 仕様を実装し、TCK に合格しました。たとえば、IBM J9、Azul Zulu、Azul Zing、Oracle JDK などです。
既存の JDK のほぼすべては OpenJDK から派生したものです。
多くの人が示唆しているように、ライセンスは JDK 間で変更されます。
JDK 11 以降、長期サポートの Oracle JDK/Java SE にアクセスするには商用ライセンスが必要になります。サブスクリプションのない Oracle JDK は動作しなくなる可能性があるため、インストールする JDK には注意する必要があります。ソース