S-JIS[2003-07-06/2021-09-19] 変更履歴

Javaインストール


概要

Javaの開発環境は「Java SDK(Software Development Kit)」(開発キット。通称JDK)と呼ばれる。
実行環境は「Java Runtime Environment」(通称JRE)と呼ばれる。
Javaのアプリケーションを動かすだけならJREだけインストールされていればよいが、開発するにはJDKが必要。
JDKの中にはJREも含まれている。ちょっとした違いとしては、JDKに入っているJREはソース付きでコンパイルされているらしい。

Java2(ジャバツー)とは、Javaのバージョンが1.2に上がったときに、それまでのバージョンとは大きく変わったことをアピールする為に付けられた呼び方。 略してJ2SDKとかJ2SEとかJ2EEとかに使われている。

しかしJavaのバージョン1.5からは、Java2の「2」は外すことに決めたらしい。
「Java2 1.5」ではなく、「Java 5.0」と呼ぶ。JDKも、正式には「J2SE Development Kit 5.0」らしい。
なのでEclipseJavaのコンパイルバージョンを選ぶときの選択肢は「5.0」。だが、Javaのインストールディレクトリや「java -version」で見られるバージョン名では1.5となっている。ので、自分はたいていJDK1.5と呼んでいる。
他にも、j2reとかj2sdkと呼んでいたものが、jreやjdkに変わった。
(つまり、呼び方は変えたが、バージョン番号はそのまま続ける、ということだろう)

バージョン1.6では「5.0」の「.0」も取れて、「Java SE 6」と言うことになったらしい。

jdk1.9の次は、jdk1.10になるのかjdk2.0になるのか、どちらだろう?w たぶん2.0にすると昔のJava2とまぎわらしくなるので1.10だと思うが。
と思っていたら、Java9(JDK9)というのが正式名称になり、Java10, Java11と続いている。[2019-03-31]

Javaのバージョン


開発環境(JDK)は、開発対象に応じていくつかのエディションに分かれている。大まかに言って、入っているライブラリーが異なる 。

JDK1.4の頃の名称
名称 概要
J2SE Java2 Standard Edition 標準エディション。コンパイラーや標準的なライブラリー。
基本的にはこれがあればコンパイルできる。
逆にJ2EEJ2MEも、使うにはJ2SEが必要。
J2EE Java2 Enterprise Edition 企業向け(?)エディション。
なんでEnterprise(事業・企業)なのかは知らないが、Webサーバー向け。
EJBとかJSPとかを使うときは必要。
J2ME Java2 Micro Edition 携帯電話や組み込み機器向け。

普通、「Javaをインストールする」というと、JREJDKのどちらかを指すと思う。[2019-03-31]
自分の場合はJavaのアプリケーションの開発をするのが仕事なので、「Javaのインストール」はJDKのインストールを指す。
エディションは特に気にしない限りStandard Edition。

JDKはOracle(昔はSun)が出しているものが純正だと思うので、基本的にOracleが出しているOracle JDKを使う。
ただしJDKはOracle以外にも様々なベンダー(IBMとかAWSとかRedHatとか)が出しているので、(特にウェブアプリケーションにおいては)ベンダーのJDKを使うこともあると思う。 (例えばIBMが出しているWebSphere(WAS)を使うならIBMのJDKが良いとか)
Oracle JDKもOpenJDKベースなので、OpenJDKでも良いと思う。

Java12で「Javaが有償化される」というデマが流れたが、短期サポートのバージョンのOracle JDKに関しては最新版しか無償公開しないということのように思われる。
Oracleが短期サポートとするバージョンであるJava9やJava10は、既にOracleのサイトからダウンロードできなくなっている。
長期サポートバージョン(LTS)であるJava8やJava11は、Java12が出た時点でもまだOracleのサイトからダウンロードできる。
(また、Java11からOracle JDKはライセンスがGPLになり、商用利用する場合は有償のサポート契約が必要らしい→publickeyのJava 12正式版がリリース
※繰り返すが、これはあくまでOracle社がサポートしているOracle JDKの話であり、有償/無償の内容やサポート期間については、各ベンダーのJDKによって異なる

Oracle JDKは、Java17で再び無償化されることになった。[2021-09-19]
→publickeyのオラクル、Oracle JDKを再び無料提供へ、本番環境でも利用可。昨日リリースのJava 17から


Linuxへのインストール

Linux(RedHatやCentOS)へのインストール方法。[/2016-04-09]

  1. OracleのJavaSEのダウンロードのページからLinux版 をダウンロードし、インストールする。
  2. 解凍されてrpmファイルが作られ、自動的にrpmコマンドが実行されてインストールされる。
  3. 環境変数を設定する。
    環境変数名 備考
    JAVA_HOME /usr/java/default インストールされたディレクトリー
    PATH $JAVA_HOME/bin (バージョンによっては)java・javacは自動的に/usr/binの下にリンクが作られるが、
    javap等は作られないので、リンクを作るか、パスを通す必要がある。

Windowsへのインストール

Windowsへのインストール方法。[/2011-07-30]

  1. OracleのJavaSEのダウンロードのページからWindows版をダウンロードする。
  2. Java12の場合、jdk-12-windows-x64_bin.exe を実行する。→インストール先
  3. 環境変数を設定する。
    環境変数名 備考
    JAVA_HOME C:\Program Files\Java\jdk-12 インストールしたディレクトリ
    PATH %JAVA_HOME%\binを追加 コンパイラー等の実行パス

CLASSPATHは、JDK1.5以降は特にセットする必要は無さそう。[2007-05-27]
Eclipse3で使うなら、JAVA_HOMEもPATHも特に設定する必要は無さげ)

インストールディレクトリ

Javaのバージョンに応じて、インストーラーや、インストール先のディレクトリも変わってきている。[2007-05-06]

バージョンによるインストール先の違い
ver JREのディレクトリ JDKのディレクトリ 更新日
1.4.0 C:\Program Files\Java\ j2re1.4.0_01 C:\ j2sdk1.4.0_01  
1.4.2 C:\Program Files\Java\ j2re1.4.2_13 C:\ j2sdk1.4.2_13  
1.5 C:\Program Files\Java\ jre1.5.0_09 C:\Program Files\Java\ jdk1.5.0_09  
1.6 C:\Program Files\Java\ jre1.6.0_01
jre6
C:\Program Files\Java\ jdk1.6.0
jdk1.6.0_22
 
1.7 C:\Program Files\Java\ jdk1.7.0\jre C:\Program Files\Java\ jdk1.7.0 2011-07-30
1.8 C:\Program Files\Java\ jdk1.8.0_112\jre C:\Program Files\Java\ jdk1.8.0_112 2018-04-21
9 C:\Program Files\Java\ jre-9 C:\Program Files\Java\ jdk-9 2018-04-21
10 C:\Program Files\Java\ jre-10 C:\Program Files\Java\ jdk-10 2018-04-21
11     C:\Program Files\Java\ jdk-11 2018-10-01
12     C:\Program Files\Java\ jdk-12 2019-03-31

※Java11から、JDKをインストールしてもJREはインストールされなくなった。[2018-10-01]
(java.exe自体は、jdkのディレクトリーのbinの下にある)


自動アップデート

Windows版では、Javaのバージョンアップを自動的に行う機能が用意されている。[2009-05-05]
当然オン・オフを切り替えることも出来て、その設定はコントロールパネルの「Java」で変更する。


環境変数の設定

Javaに関係する環境変数。[2011-09-25]

環境変数名 説明 備考
JAVA_HOME インストールしたディレクトリー  
PATH コンパイラー等(javacやjavap)の実行パス WindowsではJDKのbinへのパスをPATHに追加する必要がある。
ソフトによっては、別バージョンのJavaへのPATHを勝手に追加して動作が変になるので、注意が必要。
CLASSPATH コンパイル時・実行時に使用するライブラリー 以前はtools.jarを追加していたが、最近では不要。
ソフトによっては、CLASSPATHを勝手に書き換えて動作が変になるので、注意が必要。

Java目次へ戻る / 技術メモへ戻る
メールの送信先:ひしだま