OpenJDKとJDKの違い
OpenJDKとJDKの違い分析 サンのJDK7、OpenJDKとIcedTeaの疑義解釈
プロフィール(ps):
簡単に言えば、jdkは7から始まり、自由に使用できるパブリックバージョンを取得し、エンタープライズには著作権があります。
オープンソースについて:元のjdkは完全にオープンソースではありません。openjdkは、完全にオープンソースにする必要があり、部分の公開元のバージョンは、オープンソースはまた、独自のオープンソースの実装を持っている必要があります開くことはできません。ほとんどのLINUXディストリビューションでは、ビルトインまたはJDKのソフトウェアソースを介してインストールされ、OpenJDK、インストールされています。 歴史的に、この理由は、OpenJDKは、GPL協定の下でリリースされたJDKのオープンソース版であるということです。
JDK7の時点で、OpenJDKはJDK7の基幹開発版となっています。 SUN JDK7はOpenJDK7をベースにリリースされており、ソースコードの一部を差し替えただけで、ソースコードの大部分は同じです。JRL(Java Research License)を使用してリリースされています。OpenJDK6についてはさらに複雑な側面は、まず第一に、OpenJDK6はJDK7のブランチであり、Java SE7の新機能を削除しようとするので、できるだけJava6の標準に沿ったものです。第二に、JDKとOpenJDKの違いは次のように要約することができます:異なる認証プロトコル:
OpenJDKはGPL V2プロトコルで、JDKはJRLプロトコルでリリースされています。どちらのプロトコルもオープンソースですが、GPL V2が商用利用を認めているのに対し、JRLは個人的な研究利用しか認めていないという違いがあります。OpenJDKには、JDKの最もリーンなバージョンのみが含まれています:
OpenJDKにはRhino Java DB JAXP ......などの他のパッケージは含まれておらず、分離できるパッケージはできるだけ分離していますが、そのほとんどはフリーソフトで、自分でダウンロードして追加することができます。OpenJDKのソースコードは完全ではありません:
これは、GPLを使用してOpenJDKでは、SUN JDKのソースコードの一部は、財産権の問題のためにOpenJDKの使用のために開くことができない、その中で最も重要な部分は、JMXのオプションのコンポーネントSNMPの部分のコードです考えるのは簡単です。したがって、開くことができないソースコードは、OpenJDKのコンパイル用のプラグインにされ、また、プラグを使用しないように選択することができます。 Icedteaは、ソースコードの同じ機能の開発のこれらの不完全な部分のために、より完全なOpenJDKを促進するために。OpenJDKとIcedTeaの関係:
財産権の問題から、SUN JDKのソースコードの多くは、フォントラスタライズエンジンなど、同じ機能を持つオープンソースのコードに置き換えられ、代わりにFree Typeが使用されています。Javaの商標は使用できません:
OpenJDKがインストールされているマシンで "java -version "と入力するとOpenJDKと表示されますが、Icedteaでパッチを当てたOpenJDKではjavaと表示されるからです。
JDKを呼び出すには2つの方法があり、初期はSun JDKと呼ばれ、現在はOracle JDKは、実際には、同じものです。しかし、OpenJDKはまた、Oracle OpenJDKと呼ばれているため、このステートメントは、必ずしも正確ではありません。
しかし、最も単純で簡単な理解が、また、個人的な理解に属する:OpenJDKは、JDKのオープンソースのコードだけでなく、すべてではない、JDKの一部では、いくつかのOracleがあるため、オープンソースではない、歴史的な理由のいくつかがあります。