C#怎么创建 NuGet 包 C#将自己的类库打包成NuGet包并发布

来源:这里教程网 时间:2026-02-21 17:29:59 作者:

创建并发布一个 NuGet 包,是将 C# 类库分享给其他开发者或在多个项目中复用的重要方式。整个过程包括:准备类库项目、添加包元数据、生成包文件(.nupkg)、以及发布到 NuGet.org 或私有源。

1. 准备类库项目

确保你有一个 .NET 类库项目(推荐使用 SDK 风格的 csproj 格式)。如果你还没有,可以用 Visual Studio 或命令行创建:

dotnet new classlib -n MyLibrary

这会生成一个名为 MyLibrary 的类库项目。

2. 添加 NuGet 包元数据

打开 .csproj 文件,在 PropertyGroup 中添加必要的 NuGet 元数据,例如:


  
    net6.0
    MyCompany.MyLibrary
    1.0.0
    YourName
    MyCompany
    A simple library for demonstration.
    demo;utility
    https://github.com/yourname/MyLibrary
    https://github.com/yourname/MyLibrary
    git
    © MyCompany. All rights reserved.
    Initial release.
  

这些字段会在 NuGet.org 上显示。其中 PackageId 必须全局唯一。

3. 生成 NuGet 包 (.nupkg)

在项目目录下运行以下命令生成包:

dotnet pack -c Release

成功后会在 bin/Release 目录下生成一个 .nupkg 文件,比如:MyCompany.MyLibrary.1.0.0.nupkg

4. 发布到 NuGet.org

要发布到公共 NuGet 仓库,你需要:

注册一个账号:访问 nuget.org 并注册 获取 API Key:登录后进入「API Keys」页面,创建一个新的 key,选择包含你包名的模式(如 *),复制该 key

然后使用命令行推送包:

dotnet nuget push MyCompany.MyLibrary.1.0.0.nupkg --api-key YOUR_API_KEY --source https://api.nuget.org/v3/index.json

推送成功后,你的包将在 NuGet.org 上可搜索和安装。

如果以后更新版本,只需修改 .csproj 中的 Version 字段,重新打包并推送即可。

基本上就这些。不复杂但容易忽略细节,比如包名冲突或缺少元数据导致审核警告。建议首次发布前先检查包内容:

# 可用工具查看 .nupkg 内容(本质是 zip 文件) # 解压后检查 lib/、ref/、.dll 和 .xml 文档是否正确包含

相关推荐