我有 java 7
和 java 8
都安装在我的windows系统下 C:\Program Files\Java
在环境路径中,我指定了 java 7
的路径,如下所示。
%JAVA_HOME%/bin
其中 JAVA_HOME = C:\Program Files\Java\jdk1.7.0_17
但是当我输入 javac -version
它显示 javac 1.7.0_17
这是有道理的
但是当我做 java -version
它显示
java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)
知道这里可能是什么问题吗?
编辑 已安装的文件夹:
And one more thing echo %PATH%
has only one occurence of JDK
that is for java 7
and no occurence for JRE
found in it.
原文由 SparkOn 发布,翻译遵循 CC BY-SA 4.0 许可协议
出现此问题很可能是因为您的
PATH
中有一个 JRE ,在您的 JDK 之前。当我们在PATH
中添加 JDK 并且不删除之前添加的 JRE 时,通常会发生这种情况。因此,当您执行java
它指向 JRE,当您执行javac
它指向其他版本/JDK(因为 JRE 没有javac
在里面)如果您的路径中没有任何 JRE,那么您可以复制
%JAVA_HOME%
并将其首先粘贴到您的路径变量中(确保它位于system32
路径之前)。此答案中解释 了为什么这样做的可能原因: