.net 学习手册之–创建自己的nuget包

  • .net 学习手册之–创建自己的nuget包已关闭评论
  • 36 次浏览
  • A+
所属分类:.NET技术
摘要

  在开发过程中经常有这样的场景:一个工具性质的代码会经常被用到,在.net中一般的做法是将这些代码封装成一个类库,让后需要用到这个功能时直接引入类库的dll文件,然后就可以直接使用这些代码了。但是相比于人工的方式引入dll文件,通过nuget来进行包的管理将会更加优雅方便,今天就来向大家介绍如何创建自己的nuget包。


一、前言

  在开发过程中经常有这样的场景:一个工具性质的代码会经常被用到,在.net中一般的做法是将这些代码封装成一个类库,让后需要用到这个功能时直接引入类库的dll文件,然后就可以直接使用这些代码了。但是相比于人工的方式引入dll文件,通过nuget来进行包的管理将会更加优雅方便,今天就来向大家介绍如何创建自己的nuget包。

二、准备工作

  什么是nuget,引自官方的说法:

    对于 .NET(包括 .NET Core),共享代码的 Microsoft 支持的机制则为 NuGet ,其定义如何创建、托管和使用面向 .NET 的包,并针对每个角色提供适用工具。简单来说,NuGet 包是具有 .nupkg 扩展的单个 ZIP 文件,此扩展包含编译代码 (Dll)、与该代码相关的其他文件以及描述性清单(包含包版本号等信息)

  简单理解来说,它就是.net的包管理工具,可以将其类比于前端的npm,java的maven等,有了nuget来帮我们管理包,将大大方便我们的操作。

  vs2019的NuGet包管理器截图:

.net 学习手册之--创建自己的nuget包

  首先是安装必要的工具,由于我这里是在 window 下创建 framework 的包,所以必须先下载nuget.exe,官方文档地址 -- 安装nuget客户端工具,具体环境对应的工具见下图:

.net 学习手册之--创建自己的nuget包

三、开始创建项目

  使用vs创建一个最基础的类库项目,写一些基本的代码,我这里简单创建了一个Tools的类库,写了一个简单的calculate计算类。

  然后就是配置程序集信息,右键项目-属性,在打开的窗口中选择“应用程序”标签里的“程序集信息”按钮,填写你的程序集信息,也可以通过项目资源管理器下的Properties下的AssemblyInfo.cs文件直接修改,两者效果是一样的,如下图:

.net 学习手册之--创建自己的nuget包

.net 学习手册之--创建自己的nuget包

.net 学习手册之--创建自己的nuget包

  编辑程序集信息主要是为了后面生成nuget包时使用,将会依赖程序集信息生成 nuget 包的描述信息清单文件 *.nuspec。

四、使用nuget客户端工具生成nuget包

  编辑完程序集信息后即可进入项目所在文件夹下打开命令行,使用 nuget.exe spec 命令来生成nuget包的描述信息清单文件 *.nuspec,运行完命令后会发现生成了一个默认的描述清单文件,你也可以进一步对其进行修改:

  .net 学习手册之--创建自己的nuget包

.net 学习手册之--创建自己的nuget包

  然后就可以使用打包命令 nuget.exe pack 生成nuget包了:

.net 学习手册之--创建自己的nuget包

五、总结

  至此nuget包就已经成功创建了,是不是很简单呢。后续你还可以将生成的 nuget 包发布到nuget官方网站供其它开发者下载使用,也可以推送到公司的内部私有仓库,仅供自己公司内部使用。

  下回我将教大家如何搭建自己的 nuget 私有仓库,并将生成的 nuget 包push上去供内部使用,敬请大家关注。