NuGet.exe CLI を使用して NuGet パッケージを管理する

CLI ツールを nuget.exe 使用して、Visual Studio のプロジェクトとソリューション内の NuGet パッケージを管理できます。 この記事では、NuGet パッケージを管理するために、良く使われる NuGet CLI コマンドについて説明します。 説明するコマンドはすべて Windows で動作させるものですが、そのほとんどのコマンドは、 Mac や Linux や Mono でも動作します。

NuGet CLI は、NET Framework プロジェクトと非 SDK スタイルのプロジェクト (例: .NET Standard ライブラリを対象とする非 SDK スタイルのプロジェクト) で動作します。 NuGet CLI コマンドでは、パッケージ参照を一覧表示する project packages.config ファイルを使用できます。 パッケージ参照に packages.config を使う代わりに PackageReference を使用する非SDK スタイルのプロジェクトの場合は、代わりに dotnet CLI を使用します。

Note

packages.config を使用する非SDK スタイルのほとんどのプロジェクトでは、packages.config を PackageReference に移行してから、NuGet CLI ではなく dotnet CLI を使用してパッケージを管理することをお勧めします。 ただし、C++ または ASP.NET のプロジェクトは移行することができません。

ほとんどのコマンドでは、コマンドで別の場所を指定しない限り、NuGet CLI ツールは現在のディレクトリを使用します。 NuGet CLI のコマンドを実行するには、コマンド ラインを開き、プロジェクト ファイルが含まれているディレクトリに切り替えます。

コマンドと使用できる引数の一覧表については、「nuget.exe CLI リファレンス」を参照してください。

前提条件

nuget.org から NuGet CLI をダウンロードします。nuget.exe ファイルを適切なディレクトリに保存し、ディレクトリが PATH 環境変数にあることを確認します。

Note

Windows 用の WinGetや macOS 用の Homebrew を活用することもできます。

NuGet CLI のバージョンを確認するには、コマンド ラインを開いて nuget help を実行します。上にスクロールしないようにするためには nuget help | more を使用します。 ヘルプ出力の最初の行は、バージョンを示しています。

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

NuGet CLI のインストール コマンドを使用すると、指定された NuGet パッケージをダウンロードしてインストールします。

重要

install コマンドによってプロジェクト ファイルや packages.config ファイルが変更されることはありません。 コマンドとinstallrestore を使用すると、パッケージをディスクにのみ追加します。プロジェクトに依存関係は追加しません。 プロジェクトの依存関係を追加するには、Visual Studio パッケージ マネージャーパッケージ マネージャー コンソール を使用してパッケージを追加し、installrestore を実行します。

オプション -OutputDirectory を使用して、特定のディレクトリにパッケージをインストールします。 出力ディレクトリを指定しない場合は、 install で現在のディレクトリを使用します。

nuget install <packageID | configFilePath> -OutputDirectory <outputDirectory>

たとえば、パッケージ Newtonsoft.jsonpackages のサブディレクトリにインストールするには、次のコマンドを使用します。

nuget install Newtonsoft.Json -OutputDirectory packages

インストールするパッケージを指定する代わりに、現在のディレクトリまたは別のディレクトリに既存の packages.config ファイルを指定できます。 install コマンドを使用すると、packages.config ファイルに一覧表示されているすべてのパッケージをインストールします。

nuget install packages.config

たとえば、次のコマンドを使用すると、config サブディレクトリの packages.config に一覧表示されているすべてのパッケージを packages サブディレクトリにインストールします。

nuget install config\packages.config -OutputDirectory packages

パッケージの特定のバージョンをインストールする

パッケージのバージョンを指定しない限り、install コマンドを使用すれば、最新版のパッケージがインストールされます。 特定のパッケージのバージョンをインストールするには、-Version を使用する。

nuget install <packageID | configFilePath> -Version <version>

たとえば、Newtonsoft.json パッケージのバージョン 12.0.1 をインストールするには、次のコマンドを使用します。

nuget install Newtonsoft.Json -Version 12.0.1

パッケージをリストする

list コマンドを使用すると、パッケージ フォルダーにインストールされているパッケージが一覧で表示されます。 -Source オプションを使用すると、表示するリストの制限ができます。

nuget list -Source <source>

たとえば、MyProjectpackages のサブディレクトリにパッケージを一覧で表示するには、次のコマンドを使用します。

nuget list -Source C:\Users\%USERNAME%\source\repos\MyProject\packages

検索用語を使用して、パッケージ名、タグ、または記述を検索することもできます。

nuget list <"search term"> -Source <source>

すべてのパッケージを更新する

update コマンドを使用すると、packages.config ファイル内のすべてのパッケージを使用可能な最新バージョンに更新します。 restore を実行する前に update を実行するのもお勧めです。

nuget update

パッケージを削除する

パッケージを削除するには、プロジェクト フォルダーからそのパッケージを削除してください。 パッケージを再インストールする場合、restoreinstall のコマンドを使用します。

ディスクからパッケージを削除しても、プロジェクト、 packages.configNuGet.Config ファイルのプロジェクトは更新されません。 パッケージを削除するのに一番いい方法は、Visual Studio パッケージ マネージャー UIパッケージ マネージャー コンソールを使用することです。

パッケージの復元

NuGet CLI 復元 コマンドを使用すると、不足しているパッケージをダウンロードしてインストールします。 このコマンドは、パッケージ参照に PackageReference や packages.config を使用するプロジェクトで機能します。

installrestore のようなコマンドはパッケージをディスクにのみ追加し、プロジェクト ファイルや packages.config は変更されません。プロジェクトの依存関係を追加するには、Visual Studio パッケージ マネージャー UI かパッケージ マネージャー コンソールを使用します。

パッケージを復元するには、次のコマンドを実行します。

nuget restore <projectPath>

restore コマンドを使用すると、指定されたプロジェクト パス内の ソリューション ファイルか package.config ファイルを使用します。

たとえば、MySolution.sln のすべてのパッケージを現在のディレクトリに復元するには、次のコマンドを実行します。

nuget restore MySolution.sln

Note

非SDK スタイルのプロジェクトを使用する場合は、代わりに PackageReferencemsbuild -t:restore を使用してパッケージを復元します。

詳しくは、パッケージの復元に関する記事をご覧ください。

次のステップ