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

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

目次

説明 JREとJVM
  JDK (Java Development Kit)
  Java SE
  Java EE

JREとJVM 

JREとは

JREとは、Java Runtime Environmentの略でJavaの実行環境です。

Javaランタイムとも呼ばれます。

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

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

このページの文字ですが、「あなたとJAVA,今すぐダウンロード」とインパクトがあるものになっていてネット上のちょっとした定番ネタになっています。

 

JVMとは

Java Virtual Machineの略でJavaプログラムを動かすのに必要なJava仮想マシンです。

Java VMとも呼ばれます。

上図のようにJREの中にJVMがあるイメージです(JRE = JVM + ライブラリ)。

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

JVMは、Java以外のScalaやKotlinといったプログラミング言語も動かすことができます。

JVMの使用例

Eclipseの設定ファイルのeclipse.iniで、起動オプションの-vmを指定してJVMの場所を指定します。

-vm
C:/Program Files/Java/jdk1.8.0_211/bin/javaw.exe

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

 

JDK (Java Development Kit)

JDKは、JREとJavaプログラムを開発するためのライブラリが入っています。

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

JDKは、以下のOracleのサイトで入手できます。
https://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のサイトで入手できます。
https://www.oracle.com/technetwork/java/javase/downloads/index.html

以下は、OracleのJava概念図のリンクです。
リンク先の図の左側を見るとJDKはJREを内包していることがわかります。
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のインストールと環境変数の設定

△上に戻る