问题:在自己电脑上运行java -version和javac -version,发现java版本不一致,然后查看了环境变量,JAVA_HOME 是 C:Program Files(x86)Javajdk1.7.0_01
但是javac -version的版本确是javac 1.7.0_25, 自己的电脑上确实是有一个路径是这个版本:C:Program FilesJavajdk1.7.0_25, 一时间觉得很奇怪,网上找了相关问题。
有人说是,在Path环境变量中,是本机安装Oracle软件,它在path中的配置信息放在了%JAVA_HOME%in;%JAVA_HOME%jrein 的前面,可是我的电脑上没有这样的配
置,至于有的说,修改注册表的信息,没有操作,不知道效果。
原因分析:同时安装了jdk1.7.0_01和jre1.7.0_25,且PATH变量中,C:WINDOWSsystem32目录在%JAVA_HOME%in之前。在Windows命令行下执行命令时,先
从当前目录搜素,然后按照PATH设置的路径依次查找命令,而JRE安装时会将java.exe安装到C:WINDOWSsystem32目录下,所以执行java -version命令时,查看的是jre的版
本,而javac -version时查看的jdk的版本。
解决方法:将%JAVA_HOME%in;%JAVA_HOME%jrein;放在path环境变量的最前面,然后保存新的path值,关闭已打开的cmd,然后重新打开运行cmd,查看指令java -version 和 javac -version , 出现的结果将是一致的,都是jdk1.7.0_01。