NuGet CLI 環境變數
nuget.exe CLI 的行為可以透過數個環境變數來設定,這些環境變數會影響全計算機、使用者或進程層級上的nuget.exe。 環境變數一律會覆寫檔案中的任何 NuGet.Config
設定,讓組建伺服器在不修改任何檔案的情況下變更適當的設定。
一般而言,直接在命令行或 NuGet 組態檔中指定的選項具有優先順序,但有一些例外狀況,例如 FORCE_NUGET_EXE_INTERACTIVE。 如果您發現不同計算機之間nuget.exe行為不同,則環境變數可能是原因。 例如,Azure Web Apps Kudu(部署期間使用)已設定 NUGET_XMLDOC_MODE為略過以加速套件還原效能並節省磁碟空間。
NuGet CLI 會使用 MSBuild 來讀取項目檔。 在 MSBuild 評估期間,所有環境變數都以屬性的形式提供。 NuGet 套件中 記載的屬性清單和還原為 MSBuild 目標 也可以設定為環境變數。
變數 | 描述 | 備註 |
---|---|---|
http_proxy | 用於 NuGet HTTP 作業的 Http Proxy。 | 這會指定為 http://<username>:<password>@proxy.com 。 |
no_proxy | 設定網域以略過使用 Proxy。 | 指定為以逗號 (,)) 分隔的網域。 |
EnableNuGetPackageRestore | 如果 NuGet 在還原時需要套件,則為旗標,以隱含方式授與同意。 | 指定的旗標會 被視為 true 或 1,任何其他值視為未設定旗標。 |
NUGET_CLI_LANGUAGE | 輸出語言nuget.exe變更 | 可在 6.5 和更新版本中使用。 支援的值為支援的 Visual Studio 語言地區設定名稱:zh-cn 、、en-us fr-fr ja-jp it-it cs-cz de-de zh-tw es-es 、pt-br ko-kr pl-pl ru-ru 和 。tr-tr |
NUGET_EXE_NO_PROMPT | 防止 exe 提示輸入認證。 | Null 或空字串以外的任何值都會被視為此旗標集/true。 |
NUGET_MAX_RETRY_AFTER_DELAY_SECONDS | HTTP 回應包含 Retry-After 標頭時重試之間的持續時間上限 | 啟用NUGET_OBSERVE_RETRY_AFTER時(預設為),且 HTTP 回應包含 Retry-After 標頭,此環境變數會設定將等候的最大持續時間。 請注意,Retry-After 可以提供持續時間(差異)或時間戳(日期)。 如果伺服器傳回時間戳,且您的計算機時鐘與伺服器不同步,則計算的持續時間可能很長(或負數)。 |
FORCE_NUGET_EXE_INTERACTIVE | 全域環境變數以強制互動模式。 | Null 或空字串以外的任何值都會被視為此旗標集/true。 |
NUGET_PACKAGES | 全域套件資料夾使用的路徑,如管理全域套件和快取資料夾中所述。 | 指定為絕對路徑。 |
NUGET_FALLBACK_PACKAGES | 全域後援封裝資料夾。 | 以分號分隔的絕對資料夾路徑(;)。 |
NUGET_HTTP_CACHE_PATH | 用於 HTTP-cache 資料夾的路徑,如管理全域套件和快取資料夾中所述。 | 指定為絕對路徑。 |
NUGET_OBSERVE_RETRY_AFTER | 退出退出使用 HTTP 回應消息 Retry-After 延遲持續時間 | 在 NuGet 6.5 之前,NuGet 會使用相同的輪詢策略重試所有失敗的要求。 從 NuGet 6.5 開始,NuGet 預設會使用伺服器提供的 Retry-After 延遲期間。 將此環境變數設定為 , false 以忽略 Retry-After 回應標頭。 另請參閱NUGET_MAX_RETRY_AFTER_DELAY_SECONDS |
NUGET_RESTORE_MSBUILD_ARGS | 設定其他 MSBuild 自變數。 | 傳遞與如何將自變數傳遞至msbuild.exe相同。 將命令行中的項目屬性 Foo 設定為值 Bar 的範例為 /p:Foo=Bar |
NUGET_RETRY_HTTP_429 | 變更 HTTP 429 回應的重試行為 | 在 NuGet 6.5 之前,NuGet 不會在 408 上重試導致 HTTP 429 的要求。 預設值為 true ,而且此環境變數可設定為 false 選擇加入較舊的 NuGet 行為(請勿重試要求) |
NUGET_RESTORE_MSBUILD_VERBOSITY | 設定 MSBuild 記錄詳細資訊。 | 默認值為 無訊息 (“/v:q” )。 可能的值 q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]. |
NUGET_SHOW_STACK | 判斷是否應該向用戶顯示完整的例外狀況(包括堆疊追蹤)。 | 指定為 true 或 false (預設值)。 |
NUGET_UPDATEFILETIME_MAXRETRIES | 設定 NuGet 在擷取套件時嘗試設定檔案時間戳的次數。 | 在 Windows 防病毒軟體上,可能會暫時開啟檔案,防止 NuGet 變更時間戳。 NuGet 會使用指數輪詢,其中嘗試之間的等候持續時間為 Math.Pow(2, retryNumber) 。 默認最大重試次數為9,表示失敗前的預設等候持續時間大約為一秒。 |
NUGET_XMLDOC_MODE | 決定應該如何處理元件 XML 檔檔檔擷取。 | 支援的模式會 略過 (不要擷取 XML 檔案檔檔)、 壓縮 (將 XML 檔案檔案儲存為 zip 封存)或 無 (預設值,將 XML 檔案檔視為一般檔案)。 |
NUGET_CERT_REVOCATION_MODE | 決定在安裝或還原已簽署套件時,如何執行用來簽署封裝的憑證撤銷狀態檢查。 未設定時,預設為 online 。 |
在線可能的值(預設值),離線。 與 NU3028 相關 |
NUGET_ENABLE_ENHANCED_HTTP_RETRY | 啟用或停用 NuGet 中的增強式 HTTP 重試。 | 可能的值為 true (預設值) 或 false 。 |
NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT | 設定啟用增強重試時,應重試 HTTP 連線的最大次數。 | 數位,表示要執行的重試次數,預設值為 6 。 |
NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | 設定啟用增強重試時,在重試 HTTP 連線之前,以毫秒為單位等候的時間量。 | 要等候的毫秒數,預設值為 1000 。 |
NUGET_EXPERIMENTAL_USE_NJ_FOR_FILE_PARSING | 判斷是否 Netwonsoft.Json 在還原期間用於剖析資產檔案 |
可能的值為 true 或 false (預設值)。 |