java -version 和 javac -version 得到的版本号不一样

问题描述:

设置了环境变量JAVA_HOME为jdk1.7.0_80的安装目录,并且在PATH变量中加入了%JAVA_HOME%\bin

在window 的dos命令下显示:

C:\Users\Administrator>java -version

java version “1.8.0_91”

Java(TM) SE Runtime Environment (build 1.8.0_91-b15)

Java HotSpot(TM) 64-Bit Server VM (build 25.91-b15, mixed mode)

C:\Users\Administrator>javac -version

javac 1.7.0_80

原因分析:

  同时安装了jdk1.7.0_80和jre1.8.0_91,且PATH变量中,C:\WINDOWS\system32目录在%JAVA_HOME%\bin之前。在Windows命令行下执行命令时,先从当前目录搜索,然后按照PATH设置的路径依次查找命令,而JRE安装时会将java.exe安装到C:\WINDOWS\system32目录下,所以执行java -version命令时,查看的是jre的版本,而javac -version时查看的jdk的版本。把C:\WINDOWS\system32\java.exe,javaw.exe,javaws.exe删除了

再敲命令,显示一样:

C:\Users\Administrator>java -version

java version “1.7.0_80”

Java(TM) SE Runtime Environment (build 1.7.0_80-b15)

Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

C:\Users\Administrator>javac -version

javac 1.7.0_80

    原文作者:坚持-梦想
    原文地址: https://blog.csdn.net/yaozhiwei1019/article/details/77774636
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞