次の方法で共有


Visual Studio の NuGet パッケージ マネージャー オプション

Visual Studio には、NuGet パッケージ マネージャーの動作を構成するためのオプション ページがいくつか用意されています。 NuGet の構成設定は、 NuGet.Config ファイルに格納されます。

NuGet オプションへのアクセス

NuGet パッケージ マネージャー のオプションにアクセスするには、複数の方法があります。

  1. メイン メニューから、[ ツール] > [オプション] に移動し、左側のウィンドウで [NuGet パッケージ マネージャー ] を展開します。
  2. [ツール] > [NuGet パッケージ マネージャー] > [パッケージ マネージャーの設定] メニュー コマンドの下にある [NuGet] メニューから。
  3. クイック検索: Visual Studio 検索 を使用して、"NuGet" または NuGet 関連の設定名を検索して、その [オプション] ページにすばやく移動します。
  4. パッケージ マネージャー UI から: パッケージ マネージャー UI ツール バーの設定 (歯車) アイコンを押します。
  5. パッケージ マネージャー コンソールから: [パッケージ マネージャー コンソール] ツール バーの設定 (歯車) アイコンをクリックします。

全般

[全般] オプション ページには、NuGet のパッケージ管理動作を制御する設定が含まれています。

NuGet オプションの [全般] ページで強調表示されている [NuGet ローカル リソースのクリア] ボタン

パッケージの復元

ビルド操作中のパッケージの自動復元の設定:

  • NuGet に不足しているパッケージのダウンロードを許可する: パッケージの復元と [NuGet パッケージの復元] コマンドを有効にすることを選択します。
  • Visual Studio でのビルド中に不足しているパッケージを自動的にチェックする: Visual Studio からビルドを実行するときに、不足しているパッケージを自動的に復元することを選択します。

パッケージの復元動作の詳細については、「パッケージの復元」を参照してください。

バインド リダイレクト

  • バインド リダイレクトの適用をスキップする: 有効にすると、NuGet は、パッケージのインストールまたは更新中に、app.config または web.config ファイルのバインド リダイレクトを自動的に追加または更新しません

Package Management

  • 既定のパッケージ管理形式: NuGet 形式 PackageReference (ほとんどのプロジェクトに推奨) と packages.config (古いプロジェクトのレガシ形式) のいずれかを選択します。 詳細については、「 既定のパッケージ管理形式の選択」を参照してください。

    • PackageReference: パッケージ参照をプロジェクト ファイルに直接格納します。 これは、より優れた依存関係解決をサポートする最新の形式であり、SDK スタイルのプロジェクトに必要です
    • packages.config: プロジェクト ファイルとは別にパッケージ情報を格納するレガシ XML ファイル形式
  • 最初のパッケージのインストール時に形式の選択を求めるメッセージが表示されます。有効にすると、パッケージがないプロジェクトにパッケージを初めてインストールするときに PackageReference と packages.config を選択するように求められます。

NuGet ローカル リソースのクリア

[ Clear NuGet Local Resources]\(NuGet ローカル リソース のクリア\) コマンド ボタンを使用すると、次のような NuGet のローカル キャッシュをクリアできます。

  • http-cache: ダウンロードされたパッケージのメタデータとパッケージ
  • global-packages: インストールされているパッケージ フォルダー
  • temp: 一時ファイル
  • plugins-cache: プラグイン操作の結果

NuGet のキャッシュとフォルダーの詳細については、「 グローバル パッケージ、キャッシュ、および一時フォルダーの管理」を参照してください。

構成ファイル

[構成ファイル] オプション ページには、現在のソリューションに適用される NuGet.Config ファイルが表示され、Visual Studio で直接開いて編集できます。

ファイルを編集するには、ファイル パスを選択し、[開く] ボタンを押します。 ファイルは Visual Studio の新しいタブで開き、直接編集できます。

[開く] ボタンが強調表示された NuGet オプションの [構成ファイル] ページ

構成ファイルは、優先度が最も高い順に一覧表示されます。 NuGet では、複数の構成ファイルの設定がマージされる階層的な構成システムを使用します。 詳細については、「 一般的な NuGet 構成」を参照してください。

パッケージ ソース

[パッケージ ソース] オプション ページでは、NuGet がパッケージをダウンロードするソースを管理できます。

NuGet オプションの [パッケージ ソース] ページ

パッケージ ソースの管理

NuGet.Config ファイルに従って、構成されているすべてのパッケージ ソースを一覧表示します。

  • 名前: ソースの表示名
  • ソース: パッケージ ソースの URL またはファイル パス
  • [有効] チェックボックス: ソースを削除せずに有効または無効にします。
  • 安全でない接続を許可する: 安全でない HTTP 接続の許可を有効または無効にする

変更するには、テーブルの下にある [追加]、[編集]、[削除] ボタンを使用します 。 チェック ボックスは、テーブル内で直接切り替えることができます。 [追加/編集] ダイアログで [保存] を押すと、関連する NuGet.Config ファイルで変更が更新されます。

[パッケージ ソース] ページの [追加] ダイアログ

マシン全体のパッケージ ソース

マシン レベルで定義されているパッケージ ソースは、以下の専用セクションに表示されます。 これらは通常、Visual Studio ワークロードによってプロビジョニングされ、[有効] 列のチェック ボックスを使用してのみ有効または無効にすることができます。

[パッケージ ソース] ページのマシン全体のソース テーブル

安全でない接続を許可する

セキュリティ上の理由から、NuGet では既定で HTTPS ソースの使用が強制されます。 HTTP ソースを使用する必要がある場合は、明示的に許可する必要があります。 HTTP ソースを使用すると、[パッケージ ソース] テーブルの最初の列に、その行のパッケージ ソースに関する警告またはエラーに関する情報を含むアイコンが表示されます。

⚠HTTP パッケージ ソースが使用され、[安全でない接続を許可する] が有効になっている場合は、左端の状態列に警告が表示されます。

HTTP ソースは安全ではありません。 代わりに HTTPS を使用することを検討してください。 'AllowInsecureConnections' が有効になっており、HTTP アクセスが許可されています。

HTTP ソースの警告と [セキュリティで保護されていない接続を許可する] が有効になっている [パッケージ ソース] ページ

❌ HTTP ソースが使用され、[安全でない接続を許可する] が無効になっている場合、左端の状態列にエラーが表示され、NuGet の復元は失敗します。

NuGet には HTTPS ソースが必要です。 HTTP ソースを使用するには、NuGet.Config ファイルで明示的に 'allowInsecureConnections' を true に設定する必要があります。

HTTP ソース エラーが発生し、[セキュリティで保護されていない接続を許可する] が無効になっている [パッケージ ソース] ページ

HTTP ソースのアクセス許可の構成の詳細については、 https://aka.ms/nuget-https-everywhereを参照してください。

パッケージ ソース マッピング

パッケージ ソース マッピングを使用すると、特定のパッケージに使用するパッケージ ソースを制御できるため、サプライ チェーンのセキュリティが向上します。

NuGet オプションの [パッケージ ソース マッピング] ページ

変更するには、テーブルの下にある [追加]、[編集]、[削除] ボタンを使用します

パッケージ ソース マッピングの管理

NuGet.Config ファイルに従って、構成されているすべてのパッケージ ソース マッピングを一覧表示します。

  • パッケージ パターン: 現在マップされているパッケージ パターン ( Microsoft.*Contoso.Contractsなど)
  • ソース: パッケージ パターンにマップされた 1 つ以上のパッケージ ソース。 パッケージ ソースを表示するには、有効にする必要があります。

変更するには、テーブルの下にある [追加]、[編集]、[削除] ボタンを使用します 。 [追加/編集] ダイアログで [保存] を押すと、関連する NuGet.Config ファイルで変更が更新されます。

[パッケージ ソース マッピングの追加] ダイアログ

詳細については、「 パッケージ ソース マッピング」を参照してください。

ソース マッピングが無効です

既存のソース マッピングに一覧表示されているパッケージ ソースが NuGet.Config ファイルで有効になっていない場合は、左端の列にエラーが表示されます。

マッピング内のすべてのソース値が、使用可能で有効なパッケージ ソースを参照していることを確認します。 そうしないと、マッピングが期待どおりに機能しない可能性があります。

無効なパッケージ ソースを使用したパッケージ ソース マッピング