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 ターゲットとしての復元に記載されているプロパティの一覧は、環境変数として設定することもできます。
| Variable | Description | 注釈 |
|---|---|---|
| http_proxy | NuGet HTTP 操作に使用される HTTP プロキシ。 | これは http://<username>:<password>@proxy.comとして指定されます。 |
| no_proxy | プロキシの使用をバイパスするようにドメインを構成します。 | コンマ (,) で区切られたドメインとして指定されます。 |
| EnableNuGetPackageRestore | NuGet が復元時にパッケージで必要な場合に暗黙的に同意を付与する必要がある場合にフラグを設定します。 | 指定されたフラグは true または 1 として扱われ、フラグとして扱われるその他の値は設定されません。 |
| NUGET_CLI_LANGUAGE | 出力言語 nuget.exe 変更 | 6.5 以降のバージョンで利用できます。 サポートされている値は、 サポートされている Visual Studio 言語 のロケール名です。 zh-cn、 zh-tw、 cs-cz、 en-us、 es-es、 fr-fr、 de-de、 it-it、 ja-jp、 ko-kr、 pl-pl、 pt-br、 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 キャッシュ フォルダーに使用するパス。 | 絶対パスとして指定します。 |
| NUGET_OBSERVE_RETRY_AFTER | 遅延期間 Retry-After HTTP 応答メッセージの使用をオプトアウトする | NuGet 6.5 より前では、NuGet は同じバックオフ戦略で失敗したすべての要求を再試行していました。 NuGet 6.5 以降、NuGet では既定で、サーバーによって提供される Retry-After 遅延期間が使用されます。 Retry-After 応答ヘッダーを無視するには、この環境変数を false に設定します。 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 ログの詳細度を設定します。 | 既定値は quiet ("/v:q") です。 指定できる値 q[uiet]、 m[inimal]、 n[ormal]、 d[etailed]、 および diag[nostic]。 |
| NUGET_SHOW_STACK | 完全な例外 (スタック トレースを含む) をユーザーに表示するかどうかを決定します。 | true または false (既定値) として指定されます。 |
| NUGET_UPDATEFILETIME_MAXRETRIES | 最初の試行が失敗したときにパッケージを抽出するときに、NuGet がファイルタイムスタンプの設定を再試行する回数を設定します。 | Windows ウイルス対策ソフトウェアでは、ファイルが一時的に開き、NuGet がタイムスタンプを変更できなくなる可能性があります。 NuGet では指数バックオフが使用され、試行間の待機時間が Math.Pow(2, retryNumber)されます。 既定の最大再試行回数は 9 です。つまり、失敗前の既定の合計待機時間は約 1 秒です。 |
| NUGET_XMLDOC_MODE | アセンブリの XML ドキュメント ファイル抽出の処理方法を決定します。 | サポートされているモードは 、スキップ (XML ドキュメント ファイルを抽出しない)、 圧縮 (XML ドキュメント ファイルを zip アーカイブとして格納) または なし (既定では、XML ドキュメント ファイルを通常のファイルとして扱う) です。 |
| NUGET_CERT_REVOCATION_MODE | 署名されたパッケージがインストールまたは復元されたときに、パッケージの署名に使用される証明書の失効状態チェックを実行する方法を決定します。 設定しない場合の既定値は true です。 |
使用可能な値 はオンライン (既定値)、 オフラインです。 NU3028 に関連 |
| NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT | 拡張再試行が有効な場合に HTTP 接続を再試行する最大回数を構成します。 | 実行する再試行回数を表す数値。既定値は 6。 |
| NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | 拡張再試行が有効になっているときに HTTP 接続を再試行するまでの待機時間をミリ秒単位で構成します。 | 待機するミリ秒数。既定値は 1000。 |