关于windows的jdk

扯淡
工作从web开发转向build automation,不知不觉已经一个半月了,各种学习熟悉build相关的流程和知识,比如ant, maven, jenkins 等CI技能。
因为这一个半月学的东西有点多,整理略显繁琐,但眼看着6月将过,还是阶段性总结一下=)
为了配置多jdk编译环境,最近又去oracle上download了6u45版本的jdk。很久没用windows= = path的优先级问题忘记了

 
问题
用下载的xxx.exe安装了jdk以后,发现环境变量里的JAVA_HOME和PATH里配置的java路径无效了,我尝试着切换JAVA_HOME里配的jdk版本,但是徒劳无功,java -version结果始终是我安装的那个jdk的版本
 
原因
查看PATH,强调最开始的几个环境变量%SystemRoot%\system32;%SystemRoot%;
其中,SystemRoot=C:\windows。我的jdk路径配置在PATH的最后面%JAVA_HOME%\bin;
Path的优先级是从前往后。
问题就是安装版的jdk将java.exe, javaw.exe, javaws.java复制到了C:\windows\system32里,这个目录配置成Path的最高优先级,所以,无论如何我这边如何修改JAVA_HOME都是无效的。
 
解决
1. 删了C:\windows\system32里的3个java相关exe(放心,%JAVA_HOME%\bin\里有原形的)
2. 或者,将path中配置java的那段提到PATH最前面,提高优先级

posted on 2014-06-30 22:49  timelyxyz  阅读(207)  评论(0编辑  收藏  举报

导航