2012-01-03 56 views
3

我最近在我的windows vista上安裝了jdk7。我在C:\Program Files\Java\jdk1.7.0_02\中使用了默認安裝,javac存儲在C:\Program Files\Java\jdk1.7.0_02\bin中。我已將PATHCLASSPATH環境變量(包括我的用戶和系統變量)與和JAVA_HOME(作爲我的用戶變量)配置爲使用C :\Program_Files\Java\jdk1.7.0\(我也嘗試使用C:\Program_Files\Java\jdk1.7.0_02\bin的版本)。javac不認可java 7

java -version產生期望的輸出。我也可以從C:\Program_Files\Java\jdk1.7.0\bin目錄運行javac,沒有任何問題。但是,當我嘗試從其他地方運行它時,我得到了無法識別的錯誤。哪裏可以成爲問題。我錯過了什麼?

+5

嗨,這是一個錯字還是你的'PATH'配置爲'C:\ Program_Files \ Java \ jdk1.7.0 \ bin'而不是'C:\ Program Files \ Java \ jdk1.7.0_02 \ bin'? – Ankur 2012-01-03 12:01:58

+0

是的,這是問題 – aretai 2012-01-10 17:07:08

回答

1

您的條目中有一個下劃線放在PATH變量中。這將無法正常工作。

+0

下劃線在PATH變量中起作用,我也在我的系統中使用'_' – Ankur 2012-01-03 12:06:21

+0

我試過不同的版本,有和沒有下劃線。一些舊版本的Windows需要下劃線。 – aretai 2012-01-03 12:31:37

3

請確保在路徑變量中進行檢查,您必須在某處保留空間,否則必須運行。檢查正確,設置路徑和類路徑變量時出現問題。例如像你的PATH變量已經有類似說C:\ Apache的\ BIN \ servlet的api.jar文件,現在既然你添加Java到它,你可能會保持一個空間像

C:\Apache\bin\servlet-api.jar; C:\Program_Files\Java\jdk1.7.0\bin 

你必須刪除那個空間,像這樣做

C:\Apache\bin\servlet-api.jar;C:\Program_Files\Java\jdk1.7.0\bin 

請正確檢查,你必須留下一定的空間(間隙)某處

例子:

Variable : JAVA_HOME 
Value : C:\Program_Files\Java\jdk1.7.0 

Variable : PATH 
Value : %JAVA_HOME%\bin 

現在打開cmd,然後輸入echo%JAVA_HOME% 這必須顯示您的位置爲以前設置的JAVA_HOME。我編寫了C:\ Program_Files \ Java \ jdk1.7.0 \ bin和JAVA_HOME(作爲我的用戶變量)與C:\ Program_Files的PATH環境變量(包括我的用戶和系統變量) \的Java \ jdk1.7.0 **

**但是你說你的Java是安裝在該位置**

C:\Program Files\Java\jdk1.7.0_02\bin 

爲什麼不同的位置,您是jdk1設置它之前。 7.0,但你說它在jdk1.7.0_02裏面。

希望,這可能有助於

問候

+0

不,它不是沒有空格 – aretai 2012-01-03 12:34:57

+0

但看看我的編輯,你說你安裝的路徑是C:\ Program Files \ Java \ jdk1.7.0_02 \ bin,並且你設置你的類路徑和路徑變量爲C :\ Program_Files \ Java \ jdk1.7.0 \ bin爲什麼jdk文件夾名稱中的這個不匹配是使用_02作爲擴展名,另一個沒有它。問候 – 2012-01-03 12:44:51

4

打開命令行窗口,鍵入 「路徑」,並檢查 「C:\ Program Files文件\的Java \ jdk1.7.0_02 \ BIN」已列出。如果不嘗試在該窗口中設置路徑(只是爲了檢查它是否工作):「set path = C:\ Program Files \ Java \ jdk1.7.0_02 \ bin \」並嘗試再次運行「javac」。

+1

是的,它被列出。不過,我試圖用你提供的命令來設置它,並且它工作。感謝您的幫助,想知道是什麼問題。 – aretai 2012-01-03 12:34:46

+0

因此,也許在路徑設置中有超過1個版本的JDK/Javac,並且系統對於哪個是正確的'javac'會產生困惑?!?! – bchetty 2012-01-03 13:12:35

+0

不,那裏列出了一個JDK版本。 – aretai 2012-01-06 09:52:04