2016-02-05 113 views
0

我從批處理文件中設置JAVA_HOME如下,但它仍然指向什麼是安裝在C盤故障設置JAVA_HOME

@echo on 
set JAVA_HOME=D:\xxxx\JAVA\jdk1.7.0_80 
set M2_HOME=D:\xxxx\JAVA\apache-maven-3.3.9 
set PATH=%JAVA_HOME%\bin;%M2_HOME%\bin;%PATH% 
CMD 
  1. JAVA_HOME的路徑之前設定,所以應該採取優先於所有 路徑中的其他值。
  2. 設置USER路徑變量在末尾附加JAVA_HOME。然後附加 值最少優先。所以沒有設置USER路徑變量。使用 批處理文件更新路徑。
  3. 我沒有管理員訪問權限。無法改變C盤中的任何東西。所以 java.exe,javaws.exe這些文件我無法刪除或修改。這些 文件間接指定了默認的JAVA_HOME。

請讓我知道任何其他方式來覆蓋默認的JAVA_HOME。我需要改變JAVA_HOME Maven的使用新的JDK編譯

回答

0

Atlast我發現有什麼問題。我的JDK腐敗或缺少重要的罐子。

系統拾取JAVA位置並將其設置爲JAVA_HOME,jdk應在bin文件夾中包含java.exe,javaw.exe,javaws.exe。

0

您可以設置此去控制面板/系統/系統高級配置/然後按按鈕「環境變量」,並設置JAVA_HOME在用戶變量框中

+0

我提到了爲什麼我不使用USER PATH,它在最後追加 – user2526641

0

嘗試使用setx命令。

設置修改當前shell的(窗口)環境值,並且 更改立即可用,但它是臨時的。更改 不會影響正在運行的其他shell,並且只要關閉了 shell,新值就會丟失,直到再次運行設置爲止。

setx會永久修改該值,這會影響所有將來的shell, 但不會修改已在運行的shell的環境。你 必須退出外殼並重新打開它之前可用 可用,但值將保持修改,直到您再次更改它 。

語法SETX是:setx variableName variableValue

來源:Difference between set and setx

幸得Frank Thomas