【问题标题】:Which Java am I using on my Windows 10 system?我在 Windows 10 系统上使用哪种 Java?
【发布时间】:2023-01-24 01:39:30
【问题描述】:

我在 Windows 10 系统上安装了多个版本的 Java。

我不确定 Java 是如何设置的。我在环境变量下看到以下条目

我在上面的目录中看到以下文件

然后是“Program Files”目录中的安装

我的系统上有 1.8.0_202。然后我安装了更新 1.8.0_361。系统继续使用更新 202。我需要做些什么才能使系统使用更新 361。禁用更新 202 并没有起到作用。此外,如果您可以解释如何使用所有这些不同的条目(环境变量,C:\Program Files (x86)\Common Files\Oracle\Java\javapath 中的文件)。

【问题讨论】:

  • 如果您要从系统中卸载 Java 二进制文件,然后只重新安装您关心的那个,会怎样?自从我尝试在 Windows 上执行 Java 已经差不多 10 年了,但我认为,如果您的系统上有两个相互冲突的二进制文件,则将它们都删除,然后仅替换您想要的那个通常就可以解决问题。
  • 实际上,我需要两个系统都用于不同的应用程序。我可以卸载一个,这样就可以了。但我想保留这两个系统。
  • 1.8.0_361 和 1.8.0_202 都是同一个 1.8 版本,只是安全补丁级别不同。你不需要两者。实际上,您只有 1.8.0_361 JRE 和 1.8.0_202 JDK 和 JRE。需要 JDK 的东西正在使用补丁 202,因为您还没有更新 JDK,您只更新了 JRE。
  • Java 1.8 与这些点更改向后兼容,因此将稍旧的 _202 版本保留在 _361 版本上没有实际价值。否则……您的环境是“理想的”,因为它拥有所需的所有 Java 版本……
  • 您可以打开一个 dos 或 ps 窗口并输入 java -version,它会告诉您您使用的是哪一个。通常第一个出现在您的路径变量中的是它将使用的那个,除非它是作为应用程序的一部分安装的。

标签: java


【解决方案1】:

当您在命令提示符下键入 java 时,Windows 将在 PATH 环境变量指定的目录中查找 java.exe,从第一个目录开始。在你的例子中,那是C:Program Files(x86)Common FilesOracleJavajavapath。该文件夹包含一些文件,它们只不过是指向最新安装的 JRE 中可执行文件的符号链接。在你的例子中,那将是C:Program FilesJavajre1.8.0_361in

似乎正在发生的是 JRE 自动更新,并且您已经安装了最新的 JRE。但是 JDK 是不是自动更新:您必须手动执行此操作。您还有 1.8.0_202 版的 JDK。因此,当您键入 javac(编译 Java 源文件)时,您正在使用 JDK,它位于 C:Program FilesJavajdk1.8.0_202in 中,这是您在 PATH 环境变量中指定的最后一个目录。

您可以通过删除当前版本的 JRE 和 JDK 并安装最新的 JDK 来进行清理。

【讨论】:

    【解决方案2】:

    你使用任何IDE吗? 如果您使用的是 eclipse 然后右键单击项目选择构建路径然后配置构建路径有一个选项 JRE 系统库编辑它并选择最新的 java 版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-19
      • 1970-01-01
      • 2022-06-13
      • 1970-01-01
      相关资源
      最近更新 更多