簡體   English   中英

環境變量的奇怪問題

[英]Weird issue with environment variables

我的Windows 7系統上的環境變量存在這個奇怪的問題。 它已經存在了一年,我已經解決了,但是我現在需要解決:

我將環境變量JAVA_HOME設置為C:\\Program Files\\Java\\jdk1.6.0_39\\ 在我的PATH我添加了%JAVA_HOME%\\bin;

但是,當我執行java -version它會顯示"1.7.0_11" ;當我執行javac -version它會按預期的1.6.0_39輸出1.6.0_39

我不知道為什么為java -version打印1.7.0_11 我已經檢查了PATH並且只添加了JAVA_HOME。 我如何知道哪個env變量負責使用java.exe 如何避免呢?

幾乎可以肯定,它是c:\\Windows\\System32java.exe的版本,它的路徑可能要比引用JAVA_HOME的部分早。

好的,希望%JAVA_HOME\\bin%; 是一個錯字,但如果不是,則應為%JAVA_HOME%\\bin

其余的java -version正在尋找您的JRE,而不是您的JDK。 javac正在尋找JDK。

檢查是否具有與JRE相關的環境變量。 同樣,請檢查您的路徑,以獲取對Java 7 JRE的任何硬引用。 最后,在C:\\ Windows \\ System32中查看是否存在java.exe

Java.exe在Windows上安裝了兩次。 第一個位置是您期望的位置: JAVA_HOME 第二個在c:/windows 由於此路徑始終會贏得任何其他用戶定義的路徑,因此您從此處運行Java。 如果要保留幾個Java環境並通過更改JAVA_HOME在它們之間切換,只需從c:/windows刪除java.exe

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM