安装 NuGet 客户端工具
打算安装包? 请参阅 安装 NuGet 包的方法。
要使用 NuGet,作为软件包使用者或创建者,可以使用命令行接口 (CLI) 工具以及 Visual Studio 中的 NuGet 功能。 本文简要介绍了不同工具的功能,如何安装它们,以及它们功能可用性的相对优势。
若要开始使用 NuGet 来使用包,请参阅:
若要开始创建 NuGet 包,请参阅:
工具 | 说明 | 下载 |
---|---|---|
dotnet.exe | 适用于 .NET Core 和 .NET Standard 库,以及适用于任何 SDK 样式项目(例如面向 .NET Framework 的项目)的 CLI 工具。 包含在 .NET Core SDK 中,并在所有平台上提供核心 NuGet 功能。 (从 Visual Studio 2017 开始,dotnet CLI 将自动随任何与 .NET Core 相关的工作负载一起安装。) | .NET Core SDK |
nuget.exe | 适用于 .NET Framework 库,以及适用于任何 非 SDK 样式项目(例如面向 .NET Standard 库的项目)的 CLI 工具。 提供 Windows 上的所有 NuGet 功能以及 Mac 和 Linux 上在 Mono 下运行时的大多数功能。 | nuget.exe |
Visual Studio | 在 Windows 上, NuGet 包管理器 包含在 Visual Studio 2012 及更高版本中。 Visual Studio 提供包管理器 UI 和包管理器控制台,通过它可以运行大部分的 NuGet 操作。 | Visual Studio |
Visual Studio for Mac | 在 Mac 上,某些 NuGet 功能是直接内置的。 包管理器控制台目前不可用。 对于其他功能,请使用 dotnet.exe 或 nuget.exe CLI 工具。 |
Visual Studio for Mac |
Visual Studio Code | 在 Windows、Mac 或 Linux 上,NuGet 功能可通过市场扩展使用,或使用 dotnet.exe 或 nuget.exe CLI 工具。 |
Visual Studio Code |
MSBuild CLI 还提供了还原和创建包的功能,该功能主要在生成服务器上使用。 MSBuild 不是与 NuGet 一起使用的通用工具。
程序包管理器控制台命令只能在 Windows 的 Visual Studio 中工作,不能在其他 PowerShell 环境中工作。
Visual Studio
在 Visual Studio 2017 及更新版本上安装
从 Visual Studio 2017 开始,安装程序包括具有任何采用 .NET 的工作负荷的 NuGet 包管理器。 若要单独安装或验证包管理器是否已安装,请运行 Visual Studio 安装程序并选中 “单个组件 > 代码工具 > ”“NuGet 包管理器”下的选项。
在 Visual Studio 2015 及更早版本上安装
可以从 下载适用于 Visual Studio 2013 和 2015 的 https://dist.nuget.org/index.htmlNuGet 扩展。
对于 Visual Studio 2010 及更早版本,请安装“适用于 Visual Studio 的 NuGet 包管理器”扩展。 请注意,如果在搜索结果的第一页中看不到扩展,请尝试将“排序依据”下拉列表更改为“大多数下载量”或按字母顺序排序。
CLI 工具
可以使用 dotnet
CLI 或 nuget.exe
CLI 来支持 IDE 中的 NuGet 功能。 dotnet
CLI 随某些 Visual Studio 工作负载一起安装,例如 .NET Core。 如前面所述,必须单独安装 nuget.exe
CLI。
两个 NuGet CLI 工具是 dotnet.exe
和 nuget.exe
。 请参阅功能可用性以进行比较。
- 若要面向 .NET Core 或 .NET Standard,请使用 dotnet CLI。
dotnet
CLI 是 SDK 样式项目格式所必需的,该格式使用 SDK 属性。 - 要面向 .NET Framework(仅限非 SDK 样式项目),请使用
nuget.exe
CLI。 如果项目从packages.config
迁移到 PackageReference,请使用 dotnet CLI。
dotnet.exe CLI
.NET Core 2.0 CLI dotnet.exe
适用于所有平台(Windows、Mac 和 Linux),并提供核心的 NuGet 功能,例如安装、还原和发布程序包。 dotnet
提供了与 .NET Core 项目文件(如 .csproj
)的直接集成,这在大多数情况下都很有用。 此外,dotnet
是直接为每个平台构建的,不需要你安装 Mono。
安装:
- 在开发人员计算机上,请安装 .NET Core SDK。 从 Visual Studio 2017 开始,dotnet CLI 将自动随任何与 .NET Core 相关的工作负载一起安装。
- 对于生成服务器,请按照在持续集成 (CI) 中使用 .NET Core SDK 和工具中的说明进行操作。
要了解如何在 dotnet CLI 中使用基本命令,请参阅使用 dotnet CLI 安装并使用包。
nuget.exe CLI
nuget.exe
CLI(即 nuget.exe
)是适用于 Windows 的命令行实用工具,可提供所有 NuGet 功能;它也可以使用存在一些限制的 Mono 在 Mac OSX 和 Linux 上运行。
要了解如何在 nuget.exe
CLI 中使用基本命令,请参阅使用 nuget.exe CLI 安装并使用包。
安装:
Windows
注意
NuGet.exe 5.0 及更高版本需要 .NET Framework 4.7.2 或更高版本才能执行。
- 请访问 nuget.org/downloads,并选择 NuGet 3.3 或更高版本(2.8.6 与 Mono 不兼容)。 始终建议使用最新版。若要将包发布到 nuget.org,版本至少必须是 4.1.0。
- 每次下载都直接下载
nuget.exe
文件。 让浏览器将文件保存到选定文件夹。 此文件不是安装程序;如果直接在浏览器中运行,就不会看到任何内容。 - 将文件夹添加到
nuget.exe
中放置 PATH 环境变量的位置,这样就可以从任意位置使用 CLI 工具。
macOS/Linux
行为可能因 OS 分发版本略有不同。
安装 Mono 4.4.2 或更高版本。
在 shell 提示符处,执行下列命令:
# Download the latest stable `nuget.exe` to `/usr/local/bin` sudo curl -o /usr/local/bin/nuget.exe https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
通过将以下脚本添加到 OS 的相应文件来创建别名(通常为
~/.bash_aliases
或~/.bash_profile
):# Create as alias for nuget alias nuget="mono /usr/local/bin/nuget.exe"
重载 shell。 通过输入
nuget
(而不使用任何参数)来测试安装。 应该会看到 NuGet CLI 帮助。
提示
在 Windows 上运行 nuget update -self
可以将现有 nuget.exe 更新为最新版本。
注意
https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
中始终提供推荐的最新 NuGet CLI。 为了与较旧的持续集成系统(以前的 URL)兼容, https://nuget.org/nuget.exe
当前提供 已弃用的 2.8.6 CLI 工具。
功能可用性
功能 | dotnet CLI | nuget CLI (Windows) | nuget CLI (Mono) | Visual Studio (Windows) | Visual Studio for Mac |
---|---|---|---|---|---|
搜索包 | ✔ | ✔ | ✔ | ✔ | |
安装/卸载包 | ✔ | ✔ (1) | ✔ | ✔ | ✔ |
更新包 | ✔ | ✔ | ✔ | ✔ | |
还原包 | ✔ | ✔ | ✔ (2) | ✔ | ✔ |
管理包源(来源) | ✔ | ✔ | ✔ | ✔ | |
在源上管理包 | ✔ | ✔ | ✔ | ||
设置源的 API 密钥 | ✔ | ✔ | |||
创建包(3) | ✔ | ✔ | ✔ (4) | ✔ | |
发布包 | ✔ | ✔ | ✔ | ✔ | |
复制包 | ✔ | ✔ | |||
管理 global-packages 文件夹和缓存文件夹。 | ✔ | ✔ | ✔ | ||
管理 NuGet 配置 | ✔ | ✔ |
(1) 不影响项目文件;改用 dotnet.exe
。
(2) 仅适用于 packages.config
文件,不适用于解决方案 (.sln
) 文件。
(3) 只能通过 CLI 使用各种高级包功能,因为 Visual Studio UI 工具中没有它们。
(4) 适用于 .nuspec
文件,但不适用于项目文件。
即将推出的功能
如果希望预览即将推出的 NuGet 功能,请安装 Visual Studio 预览版,该版本与 Visual Studio 稳定版本并行工作。 若要报告问题或分享对预览版的看法,请在 NuGet GitHub 存储库上打开问题。
相关主题
- 使用 Visual Studio 安装和管理包
- 使用 PowerShell 安装和管理包
- 使用 dotnet CLI 安装和管理包
- 使用 nuget.exe CLI 安装和管理包
- 包管理器控制台 PowerShell 引用
- 创建包
- 发布包
在 Windows 上工作的开发人员还可以浏览 NuGet 包资源管理器,它是可直观浏览、创建和编辑 NuGet 包的独立开源工具。 它非常有用,例如,无需重新生成包即可对包结构进行实验性更改。