答案1
在 Linux 上,如果您安装了两个(或更多)版本,则可以使用以下命令选择活动版本:
sudo update-alternatives --config java
答案2
根据我的经验,如果您已经安装了 JRE,然后安装 JDK,java.exe 等的路径将保持指向 JRE。
我希望我已经回答了你的两个问题,为什么它们不同(因为你的路径的顺序),以及如何使最新的路径执行(通过安装最新的 JRE 或手动修复你的路径)在下面的详细信息中:
$ 其中 java
C:\Program 文件(x86)\Common Files\Oracle\Java\javapath\java.exe
C:\Program 文件(x86)\Java\jdk1.8.0_121\bin\java.exe
C:\ProgramData\Oracle\Java\javapath\java.exe
$ which java [顺便说一下,这是一个 GNU 工具,不是 Windows 内置的]
C:\Program 文件(x86)\Common Files\Oracle\Java\javapath\java.EXE
$ 路径
PATH=C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Java\jdk1.8.0_121\bin;
$“C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe”-版本
Java 版本“1.8.0_201”
Java(TM) SE 运行时环境(版本 1.8.0_201-b09)
Java HotSpot(TM) 客户端 VM(版本 25.201-b09,混合模式)
$ "C:\Program Files (x86)\Java\jdk1.8.0_121\bin\java.exe" -版本
Java 版本“1.8.0_121”
Java(TM) SE 运行时环境(版本 1.8.0_121-b13)
Java HotSpot(TM) 客户端 VM(版本 25.121-b13,混合模式,共享)
(暂时假装我的 JDK 版本的 java 是较新的版本)我可以单独更新 JRE,它可能会通过将正确的新版本放入 Common Files 中来解决问题,或者我可能只是编辑我的路径以将 C:\Program Files (x86)\Java\jdk1.8.0_121\bin; 放在 C:\Program Files (x86)\Common Files\Oracle\Java\javapath; 前面