本机已经安装了jdk1.6,而比较早期的项目须要依赖jdk1.5,因而同时在本机安装了jdk1.5和jdk1.6. java
安装jdk1.5前,执行java -version获得ui
java version "1.6.0_38"
Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode)spa
安装完jdk1.5,并修改环境变量JAVA_HOME为D:\devSoftware\jdk1.5.再执行 java -version时,依然显示:命令行
java version "1.6.0_38"
Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode)blog
看上去,新的环境变量JAVA_HOME=D:\devSoftware\jdk1.5并无生效。 在网上找了不少资料才发现:get
在安装JDK1.6时(本机先安装jdk1.6再安装的jdk1.5),自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到了C:\Windows\System32目录,因为这个目录在WINDOWS环境变量中的优先级高于JAVA_HOME设置的环境变量优先级it
解决方案:将java.exe,javaw.exe,javaws.exe删除便可。开启新的命令行窗口,再执行java -version时,就获得了指望中的结果io
java version "1.5.0_17"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_17-b04)
Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_17-b04, mixed mode)变量
本人的作法是直接删除一个不用的jdk。jdk
参考资料; http://luohaiyong1024.blog.163.com/blog/static/2682797201231104615287/