次の方法で共有


パッケージの使用ワークフロー

組織が確立する可能性のある nuget.org パッケージ ギャラリーとプライベート パッケージ ギャラリーの間には、アプリやサービスで使用する非常に便利なパッケージが数万個見つかります。 ただし、ソースに関係なく、パッケージの使用は同じ一般的なワークフローに従います。

パッケージ ソースに移動し、パッケージを検索し、プロジェクトにインストールし、「using」ステートメントを追加してパッケージ API を呼び出す手順の流れ

* Visual Studio と dotnet.exe のみ。 nuget install コマンドは、プロジェクト ファイルや packages.config ファイルを変更しません。エントリは手動で管理する必要があります。

詳細については、「 パッケージの検索と選択」および「パッケージインストール時の動作」を参照してください。

NuGet は、インストールされている各パッケージの ID とバージョン番号を記憶し、プロジェクトの種類と NuGet のバージョンに応じて、プロジェクト ファイル ( PackageReference を使用) または packages.configに記録します。 NuGet 4.0 以降では PackageReference が推奨されますが、これは パッケージ マネージャー UI を使用して Visual Studio で構成できます。 いずれの場合でも、プロジェクトの依存関係の完全な一覧を確認するために、適切なファイルをいつでも確認できます。

ヒント

ソフトウェアで使用する各パッケージのライセンスを常に確認することをお勧めしています。 nuget.org、各パッケージの説明ページの右側に [ライセンス情報] リンクがあります。 パッケージでライセンス条項が指定されていない場合は、パッケージ ページの [所有者に 問い合わせる ] リンクを使用して、パッケージ所有者に直接問い合わせてください。 Microsoft は、第三者のパッケージ プロバイダーからユーザーに対する知的財産のライセンスを取得せず、第三者から提供された情報に対して責任を負いません。

パッケージをインストールする場合、NuGet は通常、パッケージがキャッシュから既に使用可能かどうかを確認します。 グローバル パッケージとキャッシュ フォルダーの管理の説明に従って、コマンド ラインからこのキャッシュを手動でクリアできます。

NuGet では、パッケージでサポートされているターゲット フレームワークがプロジェクトと互換性があることを確認します。 パッケージに互換性のあるアセンブリが含まれていない場合は、NuGet にエラーが表示されます。 互換性のないパッケージ エラーの解決を参照してください。

プロジェクト コードをソース リポジトリに追加する場合、通常、NuGet パッケージは含まれません。 後でリポジトリを複製したり、プロジェクトを取得したりするユーザー (Visual Studio Team Services などのシステム上のビルド エージェントを含む) は、ビルドを実行する前に必要なパッケージを復元する必要があります。

リポジトリを複製し、復元コマンドを使用して NuGet パッケージを復元するフロー

パッケージの復元 では、プロジェクト ファイルまたは packages.config 内の情報を使用して、すべての依存関係を再インストールします。 依存関係の解決に関する説明に従って、関連するプロセスに違いがあることに注意してください。 また、上の図では、パッケージ マネージャー コンソールの復元コマンドは表示されません。コンソールを使用している場合は、Visual Studio のコンテキストに既に存在します。これは通常、パッケージを自動的に復元し、次に示すようにソリューション レベルのコマンドを提供するためです。

プロジェクトに既に含まれているパッケージを再インストールする必要があり、依存関係を再インストールする場合もあります。 これは、 nuget reinstall コマンドまたは NuGet パッケージ マネージャー コンソールを使用して簡単に実行できます。 詳細については、「 パッケージの再インストールと更新」を参照してください。

最後に、NuGet の動作は、 NuGet.Config ファイルによって駆動されます。 NuGet 動作の構成で説明されているように、複数のファイルを使用して、さまざまなレベルで特定の設定を一元化できます。

NuGet パッケージをインストールする方法

NuGet パッケージは、次の表のいずれかの方法を使用してダウンロードおよびインストールされます。

Tool Platforms Description
dotnet CLI All .NET Core および .NET Standard ライブラリ、および .NET Framework を対象とする SDK スタイルのプロジェクト用の CLI ツール ( SDK 属性を参照)。 <package_name>によって識別されるパッケージを取得し、プロジェクト ファイルへの参照を追加します。 また、依存関係を取得してインストールします。
Visual Studio Windows と Mac 指定したパッケージ ソースのプロジェクトにパッケージとその依存関係を参照、選択、およびインストールできる UI を提供します。 インストールされているパッケージへの参照をプロジェクト ファイルに追加します。
パッケージ マネージャー コンソール (Visual Studio) Windows のみ 選択したソースから <package_name> によって識別されたパッケージを取得してソリューション内の指定されたプロジェクトにインストールし、プロジェクト ファイルへの参照を追加します。 また、依存関係を取得してインストールします。
nuget.exe CLI All .NET Standard ライブラリを対象とする .NET Framework ライブラリおよび SDK 以外のスタイルのプロジェクト用の CLI ツール。 <package_name>によって識別されるパッケージを取得し、その内容を現在のディレクトリ内のフォルダーに展開します。また、packages.config ファイルに一覧表示されているすべてのパッケージを取得することもできます。 また、依存関係を取得してインストールしますが、プロジェクト ファイルや packages.configに変更を加える必要はありません。