windows 中 到底是用的哪个java.exe??? 删除了PATH变量的Java设置还是可以运行java.exe windows/system32


当电脑里面有多个jdk或是jre时,在cmd里面到底是用的哪个java.exe呢?

一、cmd 里使用java:
1. 使用哪个java.exe
机器上很多地方都有java.exe,cmd 里用java,实际是用path变量最前面一个,就是C:\WINDOWS\system32里面的

2. 使用哪个jre
在哪个jre下启动java.exe呢,有个查找顺序:(1)java.exe当前目录(2)java.exe的父目录(3)注册表里current version下的版本号,该版本下有对应的JavaHome路径

所以在我的机器上,cmd 里java时,首先找C:\WINDOWS\system32下,木有jre;然后是C:\WINDOWS\ 木有 jre;
最后通过注册表找到了1.6版本的jre,所以java -version 显示的是1.6版本
不管我是否给jdk1.5设置了环境变量,都不影响上面的结果

二、删除了PATH变量的Java设置,但是依然可以在cmd里面运行java.exe

why?因为注册表面还没删除!!!



免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM