Java JVMとJDKとJREとJava SEとJava EEの違い

JavaのJVMとJDKとJREとJava SEとJava EEの違いです。

目次

JVM (Java Virtual Machine)

Javaプログラムを動かすのに必要なプログラムです。
Java仮想マシン、Java VMとも呼ばれます。

以下の図のようにJVMの上にJavaプログラムがあるイメージです。

JVMは、WindowsやLinuxなどのOS毎の違いを吸収してくれます。
そのためプログラムをする側がOSの違いを意識しなくてよくなります。
本来であれば、OSごとにプログラムを作成する必要があります。

JVMはJRE、JDKに含まれています。

JVMの使用例

Eclipseは、Javaプログラムベースの製品です。
そのためJVMが必要です。
Eclipseの設定ファイルのeclipse.iniで、起動オプションの-vmを指定してJVMの場所を指定できます。

-vm
C:/Program Files/Java/jdk-9.0.1/bin/javaw.exe

 

JRE (Java Runtime Environment)

Javaを利用するためのソフトです。

Javaベースのソフトウェアを動かすときやJava実行環境が必要なサイトを利用する時などはJREが必要です。

以下のサイトで入手できます。
https://www.java.com/ja/

以下は、Oracleの用語の違いについて書かれているリンクです。
https://www.java.com/ja/download/faq/techinfo.xml

 

JDK (Java Development Kit)

Javaプログラムを開発するためのソフトが入っています。
JREも含まれています。

以下は、JDKをインストールしたフォルダのbin配下です。
(C:\Program Files\Java\jdk-9.0.1\bin)
開発向けのexeファイルとして、コンパイルするためのJavac.exeやJava文書を生成するJavadoc.exeなどがあります。

JDKは、以下のOracleのサイトで入手できます。
http://www.oracle.com/technetwork/java/javase/downloads/index.html

 

Java SE

Java SEは、Java Platform, Standard Editionの略です。
Javaの標準的な機能のAPIの集合体です。

OracleのJava SEのダウンロードボタンをクリックするとJDKがダウンロードされます。

JavaSE (JDK)は、以下のOracleのサイトで入手できます。
http://www.oracle.com/technetwork/java/javase/downloads/index.html

以下は、OracleのJava概念図のリンクです。
https://docs.oracle.com/javase/jp/7/

バージョンの2から5までは J2SEと呼ばれていました。
バージョン6からJavaSEと呼ばれています。

Java SE10
Java SE9
Java SE8
Java SE7
Java SE6
J2SE 5.0
J2SE 1.4
J2SE 1.3
J2SE 1.2
JDK 1.1
JDK 1.0

 

Java EE

Java Platform, Enterprise Editionの略です。
Java SEに加えてサーバー向けの機能がついています。
JDKではなくSDKとなっています。

JavaEE (SDK)は、以下のOracleのサイトで入手できます。
http://www.oracle.com/technetwork/java/javaee/downloads/index.html

関連の記事

Java JDKのインストールと環境変数の設定の手順

△上に戻る