制作nuget包并上传到nuget.org

发布于:2024-03-26 ⋅ 阅读:(64) ⋅ 点赞:(0)

下面是一个详细的步骤指南,用于创建一个简单的 C# NuGet 包并将其发布到 NuGet.org。我们将创建一个简单的数学库作为示例。

步骤 1: 创建一个新的类库项目

首先,我们需要创建一个新的类库项目。这可以通过 Visual Studio 或者 .NET CLI 完成。

使用 .NET CLI:

打开命令行(例如 PowerShell、CMD 或 Terminal),然后运行以下命令:

dotnet new classlib --name SimpleMathLibrary
cd SimpleMathLibrary

这将创建一个名为 SimpleMathLibrary 的新类库项目,并将当前目录更改为项目目录。

使用 Visual Studio:
  1. 打开 Visual Studio,点击“创建新项目”。
  2. 在搜索框中搜索“类库”,选择“类库(C#)”选项,然后点击下一步。
  3. 输入项目名称“SimpleMathLibrary”,选择一个位置,然后点击“创建”。

步骤 2: 添加逻辑到类库

修改 Class1.cs 文件或者创建一个新的 C# 类文件来添加你的逻辑。以下是一个简单函数的示例,用于演示:

// Filename: MathOperations.cs
using System;

namespace SimpleMathLibrary
{
    public static class MathOperations
    {
        public static int Add(int a, int b)
        {
            return a + b;
        }
    }
}

步骤 3: 配置项目文件

编辑项目的 .csproj 文件,添加 NuGet 包的元数据信息:
注意:PackageId一定要是有效的,可以在nuget.org,上搜索看看是否已经存在

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net5.0</TargetFramework>
    <PackageId>pzx_test_add</PackageId>
    <Version>1.0.0</Version>
    <Authors>YourName</Authors>
    <Company>YourCompanyName</Company>
    <Description>一个简单的数学运算类库。</Description>
  </PropertyGroup>

</Project>

请确保替换 YourNameYourCompanyName 为相应的值。

步骤 4: 构建并打包

使用 .NET CLI 构建并打包 NuGet 包:

dotnet pack

这将在 bin\Release 目录下创建一个 NuGet 包 (pzx_test_add.1.0.0.nupkg)。

步骤 5: 获取 NuGet.org API 键

在发布你的包之前,你需要在 NuGet.org 上注册账号并获取 API 键:

  1. 访问 NuGet.org 并登录或创建一个新账户。
  2. 导航到你的账户设置,找到 API Keys 部分并创建一个新的 API 密钥。
  3. 保存你的 API 密钥,你将在下一步中使用它。
    在这里插入图片描述

步骤 6: 发布包到 NuGet.org

使用以下命令将你的包发布到 NuGet.org:

dotnet nuget push ".\bin\Realse\pzx_test_add.1.0.0.nupkg" --api-key your-api-key --source https://api.nuget.org/v3/index.json

也可以直接在网站上浏览,本地文件上传(记得点击sumbit)
在这里插入图片描述

确保替换 your-api-key 为实际的 API 密钥。

步骤 7:查看发布好的包

上传到nuget.org,刷新有点慢,需要等待一段时间
在这里插入图片描述
根据自己的需求选择合适的方式下载包
在这里插入图片描述

步骤 8:验证,上传的包是否正确

创建一个控制台项目,引入pzx_test_add 包
在这里插入图片描述

控制台输出:结果:3

小结

现在,你已经成功创建并发布了一个简单的 C# NuGet 包到 NuGet.org。你可以继续添加更复杂的逻辑和功能到你的类库中,并遵循相同的步骤来更新 NuGet 包。

记住,好的 NuGet 包应该有明确的文档、清晰的使用说明和充分的测试。祝你在 NuGet 包开发的旅程中一切顺利!

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到