2014年7月1日

[JAVA] 在Windows中javac無法使用的原因

通常有兩種狀況
一種是com.sun.tools.javac.main is not on the classpath
另一種是javac內部或外部命令可執行的程式或批次檔

如果是第一種狀況,開cmd直接到jdk的安裝目錄(通常是C:\Program Files\JAVA\jdk xxx),然後直接執行javac試試(不帶參數)。
如果沒有問題,代表環境變數PATH設錯,不知道吃到哪個jdk下的javac了(我沒遇過這狀況)。
如果一樣有出現com.sun.tools.javac.main is not on the classpath,代表安裝時有問題,跟jre混淆了,要重新安裝jdk,並且在選擇jre的安裝路徑時,不能放在jdk下面。

第二種狀況,就真是環境變數設錯,PATH後面要加上jdk/bin的路徑,如:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.7.0_60\bin;

PATH中是用分號隔開,但是分號後面不能有空白,我就是在分號後面留空白(寫for/while時的習慣)才會造成cmd抓的到java但是抓不到javac

建議在安裝跟設定完之後,java跟javac都執行過一次,有些java process會自己call javac來用(如jreport),先確認可執行免得到時原因找半天

沒有留言:

張貼留言