間違った Java バージョンが報告されています

間違った Java バージョンが報告されています

Windows 7 Professional x64 を実行しており、次の Java バージョンがインストールされています。

64ビット

  • C:\Program Files\Java
    • 1.6.0_24 より
    • 1.7.0_04 より
    • 1.7.0_07 より
    • ジェレ6
    • ジェレ7

86 の

  • C:\Program Files (x86)\Java
    • 翻訳:
    • ジェレ6
    • ジェレ7

私の環境変数には、以下がPATH含まれておりC:\Program Files\Java\jdk1.6.0_24\binJAVA_HOME次のように設定されていますC:\Program Files\Java\jdk1.6.0_24\bin

ただし、java -versionレポートを実行すると

java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)

環境変数にこのバージョンの Java への参照がない場合、このような状況になるのでしょうか。

この問題に関する助けがあれば嬉しいです。アパッチANTJava 1.6 を使用します。

答え1

おそらく、java.exe がシステム パスの 1 つにコピーされているはずです (私の知る限り、これは Java インストーラーのデフォルトの動作です)。 'java -version' を実行したときに実際に何が実行されるかを確認するには、コマンド ラインから実行します。
for %I in (java.exe) do @echo %~$PATH:Iそうすると、その場所がわかります。

答え2

パブリック JRE (Java プラグインによって使用される) をインストールすると、java.exe ファイルも C:\WINNT\system32 (IIRC) に作成されます。PATH で C:\WINNT\system32 が JDK/bin ディレクトリの前にあるため、実行されるのはおそらくこの java コマンドです。

JDK/binディレクトリをPATHの先頭に置く

答え3

PATH フォルダは、表示される順序でチェックされます。Java パスを先頭に移動してみてください。これで問題が解決する場合は、パスのどこかに別のバージョンがあります。

答え4

最近気づいたのですが、JAVA_HOME「ユーザー変数」セクションではなく「システム変数」セクションで定義していることを確認してください。

%JAVA_HOME%\bin最初はそうしていましたPATHが、機能しませんでした。JAVA_HOMEシステムに追加することで問題は解決しました。

関連情報