javac版本和java版本在命令行上显示不同

egdjgwm8  于 12个月前  发布在  Java
关注(0)|答案(3)|浏览(162)

之前,我有java 8。我最近安装了java 11。我把路径Java\jdk-11.0.7\bin移到了我的环境变量的顶部。当我执行javac -version时,它给了我版本11。但是当我执行java -version时,它给了我版本8。我如何纠正这个问题?具体来说,我想运行一个使用java 11编译的jar文件。

1cosmwyk

1cosmwyk1#

在Linux发行版中,您可以使用

update-alternatives --config java
update-alternatives --config javac

字符串

fxnxkyjh

fxnxkyjh2#

无论何时安装JDK,它都会询问JRE的路径。您可能提到了与JAVA_HOME不同的JRE路径或选择了安装。如果发生这种情况,您应该卸载Java 8和Java 11,然后重新安装Java 11。但是,在此之前,您可以尝试/确保以下事项:
1.如果您将PATH设置为%JAVA_HOME%\bin,如果安装路径(即JAVA_HOME的路径)有空间,则无法正常工作。在这种情况下,您需要将绝对路径而不是%JAVA_HOME%\bin放在PATH环境变量中。
1.在新的cmd窗口中尝试这些命令。
1.重新启动系统。
1.将JDK bin的路径移动到User变量和System变量的顶部。

sulc1iza

sulc1iza3#

我先安装了JDK 16,然后安装了JDK 1.8,安装完JDK 1.8后,我自动从1.8.2更新到1.8.3,然后关闭了更新功能。
首先,转到系统环境变量Move %JAVA_HOME%\bin in the PATH to the front
然后在PATH中找到两个值:

  • C: \ Program Files (x86) \ Common Files \ Oracle \ Java \ JavaPath
  • C: \ Program Files \ Common Files \ Oracle \ Java \ JavaPath

其中一个目录也被称为java.exe文件删除或移动到其他地方然后java -versionjavac -version将显示版本16.0.2。
如果我们在“C:\ Program Files(x86)\ Common Files \ Oracle \ Java \ JavaPath”下恢复java.exe,则会出现版本号不一致的情况

相关问题