私はどういうわけかOracle JDK
およびOpen JDK
。
しかし、使用する理由が見つかりませんOpen JDK
。Oracle JDK
はすでに必要なものをすべて備えており、時にはOpen JDK
。
どの場合に誰かがOpen JDK
?
合法性の問題だけですか?
はいの場合、問題は何ですか?
それは、Oracle JDK
2017年11月:この質問が尋ねられた時点で、OpenJDKとOracle JDKを選択する理由含める:
特定のプラットフォーム用のビルド/インストーラーの可用性。たとえば、前回確認したとき、Debian/Ubuntu向けの「.deb」形式のOracle JDKディストリビューションはありませんでした。また、Windows用のOpenJDKビルドはありません。
Oracle JDKには、有料のユーザーが有効にできる商用機能がいくつかあります。 OpenJDKには存在しません。
Oracle JDKには迷惑なクリックスルーライセンスがあります。展開を自動化しようとしている場合、これは苦痛です。例えばクラウドVMへ。対照的に、Linux上のOpenJDKは(少なくとも)プラットフォームのパッケージマネージャーを使用してインストールおよび更新できます。
OpenJDKの商用サポートが必要な場合、問題が発生する可能性があります。
ソフトウェアを使用する予定がある場合、Oracle JDKとOpenJDKの間に実質的なライセンスの違いはありませんだった (Oracle JDKのバイナリ再配布にはいくつかの制約がありますが、それらはJavaプラットフォームの非標準バージョンまたは削除済みバージョンを出荷することに関するものです。)
このブログページによると、将来、これらの違いのいくつかは解消されます。
2018年12月の更新:
2019年1月の時点で、Oracle JDK Java 8は商用利用のEOLになります。ただし、個人利用の場合、無料サポートは2020年1月まで継続されます。)
Java 9およびJava 10はEOLです。
Oracle JDK Java 11以降では、Oracleからのサポート契約またはサブスクリプションが必要です。OpenJDKJavaビルドにはこの要件はありません。
OracleはOpenJDK Java buildsのサポートを提供していませんが、サードパーティからサポートを利用できます。サードパーティはOracleセキュリティ修正をOpenJDKビルドに移植します。
参考文献:
OpenJDKは、ディストリビューションの更新プロセスと密接に統合されています。たとえば、Fedoraでは、これは単に実行できることを意味します
dnf update
サードパーティのリポジトリを有効にせずに、関連するすべての修正を含む最新のOpenJDKバージョンを入手できます。
OpenJDKは、この特定のディストリビューションでディストリビューションベンダーによってテストされています。 Oracleには、OpenJDKのテスト用のさまざまな参照プラットフォームがあります。 Fedoraの場合、Javaで記述されたソフトウェアは、ディストリビューションによって提供されるOpenJDKバージョンでテストされますが、そのソフトウェアとOracle JDKの組み合わせは、はるかに少ないテストを受けます。
Oracleは、ブラウザツールバー、パフォーマンス測定、監視ツールなどの追加ソフトウェアにJavaダウンロードをバンドルしています。
2019年にこれを読んだ人のために。
Java SE 8は、デスクトップ展開を対象とする最後のJava SEリリースです(たとえば、Java Web StartおよびスタンドアロンシステムJRE)。Java SE 8は2019年1月に公開アップデートの終了となります。その後、商用ユーザーは他のテクノロジーに移行するか、 Java SEサブスクリプション を購入する必要があります。