使用 NuGet CLI 管理 NuGet 套件

您可以使用 nuget.exe CLI 工具來管理 Visual Studio 專案和解決方案中的 NuGet 套件。 本文說明管理 NuGet 套件的最常見 NuGet CLI 命令。 所有這些命令都可以在 Windows 上運作,而且大部分在 Mac 和 Linux 上使用 Mono。

NuGet CLI 會在 .NET Framework 和非 SDK 樣式專案上執行,例如以 .NET Standard 連結庫為目標的非 SDK 樣式專案。 NuGet CLI 命令可以使用列出套件參考的專案 packages.config 檔案。 對於使用 PackageReference 而非 packages.config 進行套件參考的非 SDK 樣式專案,請改用 dotnet CLI

注意

對於大部分使用 packages.config 的非 SDK 樣式專案,最好將 packages.config 移轉至 PackageReference,然後使用 dotnet CLI 而不是 NuGet CLI 來管理套件。 不過,您無法移轉 C++ 或 ASP.NET 專案。

針對大部分的命令,NuGet CLI 工具會使用目前的目錄,除非您在命令中指定不同的位置。 若要執行 NuGet CLI 命令,請開啟命令行,並切換至包含專案檔的目錄。

如需命令及其自變數的完整清單,請參閱 NuGet CLI 參考

必要條件

nuget.org 下載 NuGet CLI。將 nuget.exe 檔案儲存至適當的目錄,並確定目錄位於您的PATH環境變數中。

注意

您也可以使用適用於 Windows 的 winget 工具或 macOS 的 Homebrew

若要找出您的 NuGet CLI 版本,請開啟命令列並執行 nuget help,或避免必須向上捲動,請使用 nuget help | more。 說明輸出中的第一行會顯示版本。

安裝套件

NuGet CLI 安裝 命令會下載並安裝指定的 NuGet 套件。

重要

命令 install 不會修改項目檔或 packages.config 檔案。 installrestore 命令只會將套件新增至磁碟,但不會將相依性新增至專案。 若要新增專案相依性,請透過Visual Studio 封裝管理員 UI封裝管理員 Console 新增套件,然後執行 installrestore

-OutputDirectory使用 選項將套件安裝到特定目錄。 如果您未指定輸出目錄, install 請使用目前的目錄。

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

例如,若要將 Newtonsoft.json 套件安裝至 packages 子目錄,請使用下列命令:

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>

例如,若要安裝套件 12.0.1 Newtonsoft.json 版,請使用:

nuget install Newtonsoft.Json -Version 12.0.1

列出套件

使用 list 命令來顯示套件資料夾中安裝的套件清單。 -Source使用 選項來限制清單。

nuget list -Source <source>

例如,若要列出 MyProject 套件子目錄中的套件,請使用:

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封裝管理員 Console

還原套件

NuGet CLI 還原 命令會下載並安裝任何遺失的套件。 此命令適用於使用 PackageReferencepackages.config 進行套件參考的專案。

如同installrestore命令只會將套件新增至磁碟,但不會修改專案檔或 packages.config。若要新增專案相依性,請使用Visual Studio 封裝管理員 UI 或控制台。

若要還原套件,請執行下列命令:

nuget restore <projectPath>

命令 restore 會在指定的項目路徑中使用方案檔或 package.config 檔案。

例如,若要還原目前目錄中MySolution.sln的所有套件,請執行:

nuget restore MySolution.sln

注意

對於使用 PackageReference的非 SDK 樣式專案,請改用 msbuild -t:restore 還原套件。

如需詳細資訊,請參閱 還原套件

下一步