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

创建NuGet包需准备类库项目,添加唯一PackageId等元数据,通过do.net pack生成.nupkg文件,再用dotnet nuget push命令配合API密钥发布至NuGet.org。

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

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

1. 准备类库项目

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

dotnet new classlib -n MyLibrary

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

2. 添加 NuGet 包元数据

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

<Project Sdk=”microsoft.NET.Sdk”>
  <PropertyGroup>
    <TargetFramework>net6.0</TargetFramework>
    <PackageId>MyCompany.MyLibrary</PackageId>
    <Version>1.0.0</Version>
    <Authors>YourName</Authors>
    <Company>MyCompany</Company>
    <Description>A simple library for demonstration.</Description>
    <PackageTags>demo;utility</PackageTags>
    <PackageProjectUrl>https://github.com/yourname/MyLibrary</PackageProjectUrl>
    <RepositoryUrl>https://github.com/yourname/MyLibrary</RepositoryUrl>
    <RepositoryType>git</RepositoryType>
    <Copyright>© MyCompany. All rights reserved.</Copyright>
    <PackageReleaseNotes>Initial release.</PackageReleaseNotes>
  </PropertyGroup>
</Project>

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

3. 生成 NuGet 包 (.nupkg)

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

dotnet pack -c Release

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

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

豆包爱学

豆包旗下AI学习应用

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

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

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 文档是否正确包含

上一篇
下一篇
text=ZqhQzanResources