S-JIS[2003-07-06/2021-09-19] 変更履歴
|
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」らしい。
なのでEclipseでJavaのコンパイルバージョンを選ぶときの選択肢は「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]
開発環境(JDK)は、開発対象に応じていくつかのエディションに分かれている。大まかに言って、入っているライブラリーが異なる 。
名称 | 概要 | |
---|---|---|
J2SE | Java2 Standard Edition | 標準エディション。コンパイラーや標準的なライブラリー。 基本的にはこれがあればコンパイルできる。 逆にJ2EEもJ2MEも、使うにはJ2SEが必要。 |
J2EE | Java2 Enterprise Edition | 企業向け(?)エディション。 なんでEnterprise(事業・企業)なのかは知らないが、Webサーバー向け。 EJBとかJSPとかを使うときは必要。 |
J2ME | Java2 Micro Edition | 携帯電話や組み込み機器向け。 |
普通、「Javaをインストールする」というと、JREかJDKのどちらかを指すと思う。[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(RedHatやCentOS)へのインストール方法。[/2016-04-09]
環境変数名 | 値 | 備考 |
---|---|---|
JAVA_HOME | /usr/java/default | インストールされたディレクトリー |
PATH | $JAVA_HOME/bin | (バージョンによっては)java・javacは自動的に/usr/binの下にリンクが作られるが、 javap等は作られないので、リンクを作るか、パスを通す必要がある。 |
Windowsへのインストール方法。[/2011-07-30]
環境変数名 | 値 | 備考 |
---|---|---|
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を勝手に書き換えて動作が変になるので、注意が必要。 |