我在环境中安装了多个版本的Java(我知道它很糟糕)。我已将JAVA_HOME设置为jdk 1_4
目录。这不是安装的,而是从zip中提取并放在某处。我们还在系统中安装了java 1.8 JRE
。我从未设置此安装目录的路径。现在我试图运行一些依赖于jdk 1_4的蚂蚁脚本。我得到一些例外,说它无法在java1.8...
中找到tools.jar。
我的问题是,当路径和java_home设置为jdk 14时,为什么ant会查找1.8版本的java?我很困惑。
更新:我查找了重复的问题。
Additional details:
Java -version在路径和java_home中使用jdk 14打印1.8。我卸载了1.8。重新打开cmd尝试java -version,现在它错误地说它无法找到java1.8而不是试图找到路径或java_home中可用的下一个java。
显示错误:
C:\Users\usrpao>java
Error: could not open `C:\Program Files\Java\jre8\lib\amd64\jvm.cfg'
答案 0 :(得分:2)
我在环境中安装了多个版本的Java(我知道它很糟糕)。我已将JAVA_HOME设置为jdk 1_4目录。
完全没错。我有类似的设置,因为我必须在Java版本之间切换。
C:\Java\Java-1.6-21
和C:\Java\Java-1.7-5
。JAVA_HOME_17 = C:\Java\Java-1.7.5
和JAVA_HOME_16 = C:\Java\Java-1.6-21
。这应该是一个系统环境变量。JAVA_HOME = %JAVA_HOME_17%
。%JAVA_HOME%\bin
为PATH(第一个条目)添加前缀。当您打开控制台窗口时,默认的java
和javac
命令将是正确的Java版本。
如果需要更改版本,请更改JAVA_HOME
环境变量以指向正确的环境变量并打开新的控制台窗口。现在,新的Java将在你的道路上。
注意:在%JAVA_HOME%\bin
之前PATH
的第一部分C:\Windows\System32
至关重要。您不希望该目录中存在的java.exe
成为您的默认java。
答案 1 :(得分:1)
您尚未指定操作系统,因此:
答案 2 :(得分:0)
系统中有多个java版本是问题,我首先卸载了所有的java版本。重启我的机器。 path和java home指向jdk 1.4。 java -version
现在指向path
中指定的版本。谢谢大家。