java版本与javac版本_java与javac版本不一致问题 | 学步园

当安装多个JDK版本时,环境变量配置正确但`java -version`与`javac -version`显示不同。问题源于高版本JRE的dll文件被调用。解决方法是将 `%JAVA_HOME%in` 添加到PATH变量开头,确保两者版本一致。
摘要由CSDN通过智能技术生成

如果安装多个版本的jdk的话,比如:jdk1.5.0_09、jdk1.5.0_17和jdk1.6.0_12,

会发现java -version和javac -version的结果不一致。

尽管在环境变量中设置了java_home和path及classpath,如下:

C:\Users\can_do>set path

C:\Java\jdk1.5.0_17\bin;PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC

C:\Users\can_do>set classpath

classpath=.;C:\Java\jdk1.5.0_17\lib\dt.jar;C:\Java\jdk1.5.0_17\lib\tools.jar;C:\Java\jdk1.5.0_17\lib;

但是检查java -version时发现,其版本显示的是jdk1.6.0_12的版本,如下:

*******begin*********

C:\Users\can_do>set java_home

java_home=C:\Java\jdk1.5.0_17

C:\Users\can_do>java -version

java version "1.6.0_12"

Java(TM) SE Runtime Environment (build 1.6.0_12-b04)

Java HotSpot(TM) Client VM (build 11.2-b01, mixed mode, sharing)

C:\Users\can_do>javac -version

javac 1.5.0_17

*******end*********

经分析检查,是因为高版本中的jre的dll文件被调用了,如下:

C:\Java\jre1.6.0_12\bin\client\jvm.dll

*****************************

C:\Users\can_do>java -version

Error opening registry key 'Software\JavaSoft\Java Runtime Environment\1.6'

Error: could not find java.dll

Error: could not find Java SE Runtime Environment.

C:\Users\can_do>

解决方法:将%JAVA_HOME%\bin加在PATH变量的头,执行java -version和javac -version,均为java

version "1.7.0"版。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值