- 締切済み
JSEのバージョンアップについて
JSEを8u25から8u40にバージョンアップしました。ところが古い方をコンパネの「プログラムと機能」で削除したにも係わらず、Javaが元のバージョンで動作しているようです。 ・コンソールからjava -versionと入力すると"1.8.0_25"と表示される。 ・Eclipseの設定ファイルに追記しても、旧バージョンのバグが再現する。 上記を踏まえて以下の質問をいたします。 ・Java -versionで表示されるバージョンはJSEのそれと違うのでしょうか。 ・Eclipseに認識させるには、iniファイル以外も変更が必要なのでしょうか。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
ああ、勘違いしている人がけっこう多いと思うので回答しておきます。 JAVA_HOMEを書き換えてjava -versionが変更されたのは昔の話です。Java SE(JDK)をインストールしても、またJAVA_HOMEの値を変更しても、java -versionのバージョンは変わりません。変わるのは、javac -versionのバージョンです。 現在のJavaでは、コンパイラ(javac)と実行環境(java)はそれぞれ独立して管理されています。Java SEは、JDKであり、あくまで「開発環境」(コンパイラ)です。ですからJAVA_HOMEの値を変更すれば、javacは変わります。 では、java -versionはどうすれば変わるのか?といえば、実行環境をインストールするんです。つまり、JREですね。java.comからJava(JRE)の最新版をインストールして下さい。これで変更されます。 javacは、普通に環境変数pathにあるjava.exeが使われるのですが、javaは、Java(JRE)でインストールされる「Java」コントロールパネルによって管理されています。ですからJDKとJREとそれぞれ用意する必要があるのです。
回答No.1 です。 失敬、よくよく見たらきちんと質問に答えてないですね。 Java は『インストールしてコントロールパネルに表示されるモノ」以外に、 複数パソコンにインストールしていることがあります。ありがちなのは、 Eclipse をインストールするときに JRE バンドル品を選択した場合ですね。 この場合は Eclipse 専用の Java が独自にインストールされます。 で、質問の回答です。 ・Java -versionで表示されるバージョンはどこの? ⇒ 環境変数の PATH で設定されたところにある Java のバージョンが 表示されます。意図しないバージョンが表示されるということは、 この設定が誤っているということです。 ・Eclipseに認識させるには、iniファイル以外も変更が必要なのでしょうか ⇒ 基本的には ini だけで良いのですが、例えば Tomcat などのプラグイン を使用していたりすると環境変数 PATH や JAVA_HOM の設定を参照 していることがあります。 正直、使用している環境や機能に依存するので、ひとつひとつ潰して 行くしかありません。
環境変数の PATH と JAVA_HOME の設定を確認してください。おそらく旧版のパスが設定されています。(PATHは ";" 区切りで複数のパスが設定できますが、前にあるものが優先されます) http://www7a.biglobe.ne.jp/~java-master/java/env.html
補足
丁寧な説明をいただきありがとうございました。 確認してみたところ、以下の様な設定になっていました。 ・環境変数→pathは8u45だがJAVA_HOMEが8u25のままなので8u45に変更 ・Eclipse→Pleiades 4.4 LunaのJSEが当時は8u20だったのかも(今は8u45) Eclipseの方は再インストールするしかないのでしょうか…