报告了错误的 java 版本

报告了错误的 java 版本

我正在运行 Windows 7 Professional x64,并安装了以下 Java 版本:

x64

  • C:\Program Files\Java
    • jdk1.6.0_24
    • jdk1.7.0_04
    • jdk1.7.0_07
    • jre6
    • jre7

x86

  • C:\Program 文件 (x86)\Java
    • jre1.6.0_07
    • jre6
    • jre7

在我的环境变量中我有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 的引用时,会出现什么情况呢?

任何关于这个问题的帮助都会很棒,因为我正在尝试运行阿帕奇蚂蚁使用 Java 1.6。

答案1

您可能已将 java.exe 复制到系统路径之一(据我所知,这是 Java 安装程序的默认行为)。要检查运行“java -version”时实际执行的内容,请从命令行运行:
for %I in (java.exe) do @echo %~$PATH:I它会告诉您它在哪里。

答案2

安装公共 JRE(由 Java 插件使用)时,还会在 C:\WINNT\system32 中创建一个 java.exe 文件(IIRC)。执行的可能是这个 java 命令,因为 C:\WINNT\system32 位于 PATH 中的 JDK/bin 目录之前。

将 JDK/bin 目录放在 PATH 的开头

答案3

PATH 文件夹按其出现的顺序进行检查。尝试将 java 路径移到前面。如果此操作能解决问题,则说明您的路径上某处有另一个版本。

答案4

正如我最近发现的,请确保您JAVA_HOME在“系统变量”部分而不是“用户变量”部分进行定义。

%JAVA_HOME%\bin开始时已经这样做了PATH,但是没有起作用 - 添加JAVA_HOME到系统后问题得以解决。

相关内容