Java-version打印错误的版本

Java-version打印错误的版本,java,ant,Java,Ant,我在这个环境中安装了多个Java版本(我知道这很糟糕)。我已经将JAVA_HOME设置为JDK1_4目录。这不是安装的,而是从zip中提取并放置在某处。系统中还安装了Java1.8JRE。我从未设置此已安装目录的路径。现在我尝试运行一些依赖于JDK1_4的ant脚本。我收到一些异常消息,说它无法在java1.8…中找到tools.jar 我的问题是,当path和java_home设置为jdk 14时,为什么ant会寻找java的1.8版本?我很困惑 更新:我已查找了重复的问题 其他详细信息:Ja

我在这个环境中安装了多个Java版本(我知道这很糟糕)。我已经将JAVA_HOME设置为
JDK1_4
目录。这不是安装的,而是从zip中提取并放置在某处。系统中还安装了
Java1.8JRE
。我从未设置此已安装目录的路径。现在我尝试运行一些依赖于JDK1_4的ant脚本。我收到一些异常消息,说它无法在
java1.8…
中找到tools.jar

我的问题是,当path和java_home设置为jdk 14时,为什么ant会寻找java的1.8版本?我很困惑

更新:我已查找了重复的问题

其他详细信息:
Java-version打印1.8,路径和Java_home中带有jdk 14。我卸载了1.8。重新打开的cmd尝试了java-version,现在它出错了,说它无法找到java1.8,而不是试图在path或javau home中找到下一个可用的java

错误显示:

C:\Users\usrpao>java
Error: could not open `C:\Program Files\Java\jre8\lib\amd64\jvm.cfg'

您尚未指定操作系统,因此:

  • 在windows上,java在C:\windows\system32中安装一个java.exe,它可能位于java\u home之前的路径上,因此会被拾取
  • 在Linux上,支持多个已安装java版本的各种发行版在路径的前面也会有一些符号链接。运行“哪个java”来确定符号链接的位置

您尚未指定操作系统,因此:

  • 在windows上,java在C:\windows\system32中安装一个java.exe,它可能位于java\u home之前的路径上,因此会被拾取
  • 在Linux上,支持多个已安装java版本的各种发行版在路径的前面也会有一些符号链接。运行“哪个java”来确定符号链接的位置

您尚未指定操作系统,因此:

  • 在windows上,java在C:\windows\system32中安装一个java.exe,它可能位于java\u home之前的路径上,因此会被拾取
  • 在Linux上,支持多个已安装java版本的各种发行版在路径的前面也会有一些符号链接。运行“哪个java”来确定符号链接的位置

您尚未指定操作系统,因此:

  • 在windows上,java在C:\windows\system32中安装一个java.exe,它可能位于java\u home之前的路径上,因此会被拾取
  • 在Linux上,支持多个已安装java版本的各种发行版在路径的前面也会有一些符号链接。运行“哪个java”来确定符号链接的位置

系统中存在多个java版本的问题,我首先卸载了所有java版本。重启我的机器。Path和java home指向JDK1.4
java-version
现在指向
路径中指定的版本。谢谢大家。

系统中存在多个java版本的问题,我先卸载了所有java版本。重启我的机器。Path和java home指向JDK1.4
java-version
现在指向
路径中指定的版本。谢谢大家。

系统中存在多个java版本的问题,我先卸载了所有java版本。重启我的机器。Path和java home指向JDK1.4
java-version
现在指向
路径中指定的版本。谢谢大家。

系统中存在多个java版本的问题,我先卸载了所有java版本。重启我的机器。Path和java home指向JDK1.4
java-version
现在指向
路径中指定的版本。谢谢大家

我在这个环境中安装了多个Java版本(我知道这很糟糕)。我已经将JAVA_HOME设置为JDK1_4目录

完全没有错。我有一个类似的设置,因为我必须在Java版本之间切换

  • 首先,在驱动器的根目录中安装Java JDK。目录名中没有空格。例如,
    C:\Java\Java-1.6-21
    C:\Java\Java-1.7-5
  • 在系统控制面板的“环境变量”部分(在“高级”下),创建一个环境变量以指向这些Java主目录中的每一个。例如,
    JAVA\u HOME\u 17=C:\JAVA\JAVA-1.7.5
    JAVA\u HOME\u 16=C:\JAVA\JAVA-1.6-21
    。这应该是一个系统环境变量
  • 创建指向所需JAVA版本的JAVA\u HOME环境变量:
    JAVA\u HOME=%JAVA\u HOME\u 17%
  • 现在在系统路径中,在路径(第一个条目)前面加上
    %JAVA\u HOME%\bin
打开控制台窗口时,默认的
java
javac
命令将是正确的java版本

如果需要更改版本,请将
JAVA_HOME
环境变量更改为指向正确的环境变量,并打开一个新的控制台窗口。现在,新的Java将出现在您的道路上

注意:非常重要的是
%JAVA\u HOME%\bin
位于
C:\Windows\System32
之前的
路径的第一部分。您不希望该目录中存在的
java.exe
成为默认java

我在这个环境中安装了多个Java版本(我知道这很糟糕)。我已经将JAVA_HOME设置为JDK1_4目录

完全没有错。我有一个类似的设置,因为我必须在Java版本之间切换

  • 首先,在驱动器的根目录中安装Java JDK。目录名中没有空格。例如,
    C:\Java\Java-1.6-21
    C:\Java\Java-1.7-5
  • 在系统控制面板的“环境变量”部分(在“高级”下),创建一个环境变量以指向这些Java主目录中的每一个。例如,
    JAVA\u HOME\u 17=C:\JAVA\JAVA-1.7.5
    JAVA\u HOME\u 16=C:\JAVA\JAVA-1.6-21