SUN/Oracle JDK か OpenJDK か—インストールしたJDKを判別する方法

目次
  • 1. JDKバージョンの確認方法
  • 2. OpenJDKとは
  • 3. Oracle JDK と OpenJDK の違い

1. JDKバージョンの確認方法

1.1 必要なコマンドラインツール

以下のツールを使用します:

  • Windows: コマンドプロンプト (cmd)
  • Linux/macOS: ターミナル

1.2 JDKバージョンの確認

次のようなコマンドを実行します:

java -version

(1) Oracle JDKの場合:

[root@localhost ~]# java -version
java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)

「Java HotSpot(TM) 64-Bit Server VM」は、Oracleの64ビットHotSpot仮想マシンであることを示しています。

(2) OpenJDKの場合:

[root@localhost ~]# java -version
openjdk version "1.8.0_144"
OpenJDK Runtime Environment (build 1.8.0_144-b01)
OpenJDK 64-Bit Server VM (build 25.144-b01, mixed mode)

ほとんどのLinuxディストリビューション (Ubuntu、Fedora、RHELなど) では、OpenJDKまたはその派生版がデフォルトで提供されています。

2. OpenJDKとは

OpenJDKは、 Suns Microsystemsが公開したオープンソースのJava実装です。Java SE仕様に準拠し、主にi386とAMD-64アーキテクチャ上で動作します。

2.1 OpenJDKの起源

OpenJDKは、2006年にSUN MicrosystemsがJavaをオープンソース化した際に誕生しました。Oracleが2009年にSUNを買収後、OpenJDKの開発とメンテナンスはOracleとJavaコミュニティの共同責任となりました。

ほとんどのJDK (IBM J9、Azul Zulu、Oracle JDKなど) は、OpenJDKをベースに作られています。

2.2 Oracle JDKの起源

Oracle JDKは、2009年以前にはSUN JDKと呼ばれていました。買収後、名称がOracle JDKに変更されました。

Oracle JDKは、OpenJDKのソースコードをベースに構築されています。

3. Oracle JDK と OpenJDK の違い

3.1 主な違い

Oracle JDKとOpenJDKの主な違いは以下のとおりです:

  • OpenJDK: FreeTypeを使用 (GPL v2ライセンス)
  • Oracle JDK: Flight Recorder、Mission Controlなど商用機能を含む

3.2 ライセンスの違い

  • OpenJDK: GPL v2ライセンス (商用利用可)
  • Oracle JDK: Oracle Binary Code License (商用利用不可、別途ライセンス購入必要)

3.3 関連ツールの有無

OpenJDKには以下の機能が含まれていません:

  • Browser Plugin
  • Java Web Start
  • Java Mission Control

3.4 ソースコードの完全性

OpenJDKのGPL v2ライセンス下では、一部のソースコード (JMXのSNMPモジュールなど) が含まれていません。

タグ: OracleJDK OpenJDK Javaバージョン ライセンス 開発ツール

7月7日 18:43 投稿