C#【必备技能篇】制作NuGet程序包,并发布到NuGet官网

本文详细介绍了如何使用C#创建NuGet程序包,包括在NuGet官网获取API Key,制作dll,创建发布文件夹,通过命令行或NuGet Package Explorer上传程序包,以及发布和管理NuGet包的步骤。
摘要由CSDN通过智能技术生成

一、准备工作:在NuGet上创建并获取API Keys

网址:https://www.nuget.org/

1、首先需要登录,直接用微软账户登录即可

在这里插入图片描述

2、点击右上角菜单API Keys,创建Key

在这里插入图片描述

3、填写信息并创建

这里写你要上传NuGet程序包的名称 【每个NuGet程序包(对应一个名称)可以上传多个版本】
在这里插入图片描述

4、复制API Key

在这里插入图片描述

二、制作一个简单的dll

新建一个“库”项目,代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ClassLibrary1
{
    public class Class1
    {
        public static int Add(int a, int b)
        {
            return a + b;
        }
        public static int Sub(int a, int b)
        {
            return a -b;
        }
    }
}

框架使用.NET Framework 4.6.1,这个在后面也会使用到,输出类型使用类库
在这里插入图片描述
生成如下dll:
在这里插入图片描述

三、创建发布文件夹

为了更好管理文件,在E:\nuget新建MyPackage_Star302Test文件夹,存放所需的文件
在这里插入图片描述

四、上传NuGet程序包并发布

1、方法一:使用命令行上传,需要下载nuget.exe

1) 到https://www.nuget.org/downloads下载nuget.exe

在这里插入图片描述

2) 配置nuget环境变量

  • 把下载的nuget.exe放到E:\nuget
  • 打开电脑属性–高级系统设置–环境变量–系统变量,选择Path–编辑–新建–填写E:\nuget,确定
    在这里插入图片描述环境变量配置好,就可以使用nuget指令了

3) 生成nuspec文件

使用nuget spec命令生产.nuspec 文件
在这里插入图片描述在这里插入图片描述
.nuspec 文件中的内容为xml格式,如下,可以简单了解:
在这里插入图片描述

更改后的内容为:

<?xml version="1.0" encoding="utf-8"?>
<package >
  <metadata>
    <id>PackageTest</id>
    <version>1.0.0</version>
    <authors>Star302</authors>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <license type="expression">MIT</license>
    <!-- <icon>icon.png</icon> -->
    <projectUrl>http://project_url_here_or_delete_this_line/</projectUrl>
    <description>Package description</description>
    <releaseNotes>Summary of changes made in this release of the package.</releaseNotes>
    <copyright>$copyright$</copyright>
    <tags>Tag1 Tag2</tags>
    <dependencies>
      <group targetFramework=".NETStandard2.1">
        <dependency id="SampleDependency" version="1.0.0" />
      </group>
    </dependencies>
  </metadata>
</package>

4)生成nupkg文件

使用nuget pack命令生产.nupkg文件
在这里插入图片描述在这里插入图片描述

5) 复制1.4的API Key,上传到NuGet

在这里插入图片描述

运行如下指令:

nuget push PackageTest.1.0.0.nupkg xxxkey -Source https://api.nuget.org/v3/index.json

【我试了几次都没成功,不知道为什么】

在这里插入图片描述

2、方法二:使用界面工具上传,需要下载NuGet Package Explorer【推荐!】

1、下载NuGet Package Explorer

https://www.microsoft.com/zh-cn/p/nuget-package-explorer/9wzdncrdmdm3?activetab=pivot:overviewtab

2、创建新Package

在这里插入图片描述

3、新增lib文件夹、新增net461文件夹、添加已有文件

在这里插入图片描述

在这里插入图片描述在这里插入图片描述

4、编辑上传数据

这里选择Edit Metadata,Edit Metadata Source则是xml文件格式的
在这里插入图片描述
更改一些参数:
在这里插入图片描述
添加项目依赖,即依赖哪些框架。比如.NETFramework,.NETStandard等
在这里插入图片描述
在这里插入图片描述
最后,点击确认
在这里插入图片描述
编辑完成,看下效果
在这里插入图片描述

看一下Metadata Source对应的内容,其实和刚刚编辑的信息是一致的。
在这里插入图片描述

在这里插入图片描述

5、保存nupkg文件

在这里插入图片描述
在这里插入图片描述

6、发布到NuGet

在这里插入图片描述
在这里插入图片描述
发布成功:
![在这里插入图片描述
在Visual Stuido中查看:
在这里插入图片描述

五、NuGet包的管理

自己到https://www.nuget.org/探索一下就好,很简单的。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参考:https://blog.csdn.net/weixin_38211198/article/details/118438071

要将 C# 接口制作NuGet 程序包,需要按照以下步骤进行操作: 1. 创建一个类库项目,并将接口代码添加到其中。 2. 在项目中添加 NuGet 包,例如 NuGet 包管理器控制台中的 "NuGet制作工具"。 3. 在项目中创建一个 "nuspec" 文件,该文件包含有关程序包的元数据信息。 4. 使用命令行或 Visual Studio 中的 NuGet 包管理器控制台,将 "nuspec" 文件和类库项目一起打包成 NuGet 程序包。 具体来说,以下是一些示例步骤: 1. 在 Visual Studio 中创建一个类库项目,并添加接口代码。 2. 在 "工具" 菜单中选择 "NuGet 包管理器" -> "程序包管理器控制台",在控制台中输入以下命令安装 "NuGet制作工具": ``` Install-Package NuGet.Packaging ``` 3. 在 Visual Studio 中创建一个 "nuspec" 文件。可以在项目中右键单击,选择 "添加" -> "新建项" -> "NuGet 规范文件",然后按照提示进行操作。以下是一个示例 "nuspec" 文件的内容: ``` <?xml version="1.0"?> <package > <metadata> <id>MyPackage</id> <version>1.0.0</version> <authors>MyName</authors> <owners>MyName</owners> <requireLicenseAcceptance>false</requireLicenseAcceptance> <description>My package description.</description> </metadata> </package> ``` 4. 使用命令行或 Visual Studio 中的 NuGet 包管理器控制台,将 "nuspec" 文件和类库项目一起打包成 NuGet 程序包。以下是一个示例命令: ``` nuget pack MyPackage.nuspec -Prop Configuration=Release ``` 这将在类库项目的输出目录中生成一个名为 "MyPackage.1.0.0.nupkg" 的 NuGet 程序包
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ElecNoon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值