Windows 在哪里保存 JDK 位置参考?
Posted
技术标签:
【中文标题】Windows 在哪里保存 JDK 位置参考?【英文标题】:Where does Windows keep JDK location reference? 【发布时间】:2018-10-31 04:29:02 【问题描述】:我之前在我的 Windows PC 上安装了 Java 7。系统环境变量也有它的位置。我在没有卸载 7 或更改环境变量的情况下安装了 Java 10。现在,当我转到 CMD 或 Cygwin 并输入 Java -version 时,它会显示 Java 10。
我想,因为我没有更改环境变量,它仍然是 7。Windows 是如何决定使用什么 JDK 的?
谢谢!
【问题讨论】:
使用 Windows 注册表。在 cygwin 中,您可以键入which java
以找出它调用的二进制文件/脚本的位置。
或在 Windows CMD where java
中——但您是要求实际的 JDK 还是 JRE(包括 JDK 安装程序中的“公共 JRE”组件)?它们的工作方式不同,并且 JRE 行为在 8 月中旬的某个地方发生了变化。
【参考方案1】:
Windows 如何决定使用什么 JDK?
Windows 不会自行做出决定。如果你在运行java -version
时得到版本10的信息,那是因为Windows首先在PATH环境变量指向的路径中找到包含java.exe
对应版本10的文件夹。如果您使用安装程序安装了 Java,安装程序将为您更新 PATH 变量。检查您的 PATH 变量,您将看到 Java 10 文件夹首先出现在那里,然后是 Java 7 文件夹。
【讨论】:
【参考方案2】:可能您的 JAVA_HOME
或只是 PATH
环境变量已更改。
转到命令行并执行以下操作来检查它:
> echo %JAVA_HOME%
例如,对我来说它会回馈:
C:\Program Files\Java\jdk-9.0.4
【讨论】:
【参考方案3】:您的 JAVA_HOME 变量可能仍设置为 JDK 7 目录,但是 Java 10 安装可能已将其 /bin 目录插入到 PATH 中。
检查以确保 java 10 不在 java 7 之前的 PATH 上,或者没有覆盖它。
CMD 等检查二进制文件的路径以获取 java-version 等命令。
【讨论】:
【参考方案4】:如果您使用的是 java ide,您可能会在 JRE 配置中找到该位置。例如在 Eclipse 中:
windows > 首选项 > 已安装的 JRE
.
【讨论】:
以上是关于Windows 在哪里保存 JDK 位置参考?的主要内容,如果未能解决你的问题,请参考以下文章