1. 程式人生 > >Java環境變數配置問題:路徑包含空格或特殊字元(_,~等)

Java環境變數配置問題:路徑包含空格或特殊字元(_,~等)

本機環境變數的設定:java_home = C:\Program Files\Java\jdk1.5.0_09

*.bat中的命令格式:

%java_home%\bin\java 或者 C:\Program Files\Java\jdk1.5.0_09\bin\java

批處理檔案中有以上這一行語句,要呼叫jdk下的java.exe ,但是我的jdk安裝目錄帶空格的,執行這個.bat發現提示錯誤: “c:\Program” 不是內部或外部命令,檢查了下,發現路徑沒有填寫錯誤因此本人推斷DOS中可能無法識別路徑中有空格的情況,因此就google了一把還發現真的是這樣,不過期間也在別人的機器上試了一把,卻發現可以跑,巧合的是他安裝的jdk路徑和我的機器是一樣的呀,難道是本人的RP問題嗎?答案肯定是NO,檢查了下他的環境變數的設定是:java_home = C:\PROGRA~1\Java\jdk1.5.0_14, 而我的設定是直接填真實的路徑:java_home = C:\Program Files\Java\jdk1.5.0_09 區別就在這個“PROGRA~1”和帶空格的真實路徑“Program Files”之間了,環境變數可以用特殊的字元代替從而達到替換空格方便使用的目的,當然大家手工設定一般不會這樣子去搞,都是直接拷貝路徑,這也沒有關係,對帶空格的路徑在bat程式碼中用雙引號"" 給它引起來就OK了,改寫成這樣就OK了:

"%java_home%"\bin\java 或者 "C:\Program Files"\Java\jdk1.5.0_09\bin\java

綜上所述:解決空格問題一共有兩種辦法,一個是想辦法在環境變數設定的時候用特殊字元給他替換掉,另外一個就是在寫程式碼的時候用雙引號給有空格的路徑給它引起來就OK了

參考資料:http://panqiujuan.blog.163.com/blog/static/9285237420105111733980/