機器上同時安裝了64位的和32位的jdk,修改JAVA_HOME環境變量切換jdk時,發現無效,java的版本一直沒有改變,起初以爲很詫異,難道須要重啓,不該該了,半信半疑地重啓後,敲入命令java -version,仍是原來的版本,我勒了個去啊。終於終於,找到一個文章,跟我同樣的問題,頓時淚流滿面,http://yunzhu.iteye.com/blog/1551433。java
問題的根源在於系統目錄(C:\Windows\System32)中也存在着java.exe,javax.exe,javaws.exe,這個路徑先於JAVA_HOME,因此每次使用java -version查詢版本時,出現的老是以前的版本。解決方法就是,把%JAVA_HOME%\bin放到系統Path變量的最前面,詳見上面的那篇文章。至於系統中爲何會多出這些文件,我也不是很明確,從命令java -verbose來看,貌似是安裝jdk時會拷貝這些文件到系統目錄中。blog