OpenJDK は参照モデルおよびオープン ソースですが、Oracle JDK は OpenJDK の実装であり、オープン ソースではありません。 Oracle JDK は OpenJDK よりも安定しています。
OpenJDK は GPL v2 ライセンスの下でリリースされますが、Oracle JDK は Oracle Binary Code License Agreement の下でライセンスされます。
OpenJDK と Oracle JDK のコードはほぼ同じですが、Oracle JDK にはより多くのクラスがあり、いくつかのバグが修正されています。
したがって、エンタープライズ/商用ソフトウェアを開発したい場合は、徹底的にテストされ安定している Oracle JDK をお勧めします。
私は OpenJDK を使用してアプリケーションがクラッシュするという多くの問題に直面しましたが、これは Oracle JDK に切り替えるだけで解決されます
技術的な違いは、それぞれの目標の結果です (OpenJDK は参照実装であり、コミュニティに公開されることを意図していますが、Oracle は商用のものであることを意図しています)
どちらも Java API のクラスのコードが「ほぼ」同じです。ただし、仮想マシン自体のコードは実際には異なります。ライブラリに関しては、OpenJDK はオープン ライブラリを使用する傾向があり、Oracle はクローズド ライブラリを使用する傾向があります。たとえば、フォント ライブラリ。