環境變數具有不同的值,取決於 CMD.exe 的啟動方式

環境變數具有不同的值,取決於 CMD.exe 的啟動方式

我在註冊表中有一個命令設定作為資料夾關聯,因此我可以按住Shift 鍵並右鍵單擊任何資料夾並在其中打開VS2010 提示符,而不必打開命令提示字元然後CD 到我正在工作的目錄。

設定:

JAVA_HOMEC:\Program Files\Java\jdk1.7.0_04在電腦 > 進階系統設定 > 環境變數中設定為...

當我執行以下操作時,會輸出正確的值:

開始 > Visual Studio 命令提示字元 (2010) ( %comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 2010 Premium\VC\vcvarsall.bat"" x86):

輸出(正確):

Setting environment for using Microsoft Visual Studio 2010 x86 tools.

C:\Program Files (x86)\Microsoft Visual Studio 2010 Premium\VC>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.7.0_04

但是當我執行以下操作時,使用了錯誤的(舊)值:

Shift+右鍵點選資料夾,選擇「在此開啟VS2010提示」(cmd /k ""C:\Program Files (x86)\Microsoft Visual Studio 2010 Premium\VC\bin\vcvars32.bat" x86 && cd /d "%V" && title Visual Studio Command Prompt (2010)"在登錄中):

輸出(錯誤的):

Setting environment for using Microsoft Visual Studio 2010 x86 tools.

E:\Hg>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.6.0_27

為什麼價值觀不一樣?第二個實例從哪裡讀取這些值?

答案1

請注意,有 2 組環境變數。一種用於用戶,另一種用於整個系統:

在此輸入影像描述

確保兩者都已調整。有時會設定使用者變量,有時則不會。

相關內容