论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
后端开发
›
.Net
›
.net 学习手册之--创建自己的nuget包
.net 学习手册之--创建自己的nuget包
傲渊山岳
金牌会员
|
2022-9-16 17:20:44
|
显示全部楼层
|
阅读模式
楼主
主题
917
|
帖子
917
|
积分
2751
一、前言
在开发过程中经常有这样的场景:一个工具性质的代码会经常被用到,在.net中一般的做法是将这些代码封装成一个类库,让后需要用到这个功能时直接引入类库的dll文件,然后就可以直接使用这些代码了。但是相比于人工的方式引入dll文件,通过nuget来进行包的管理将会更加优雅方便,今天就来向大家介绍如何创建自己的nuget包。
二、准备工作
什么是
nuget
,引自官方的说法:
对于 .NET(包括 .NET Core),共享代码的 Microsoft 支持的机制则为 NuGet ,其定义如何创建、托管和使用面向 .NET 的包,并针对每个角色提供适用工具。简单来说,NuGet 包是具有 .nupkg 扩展的单个 ZIP 文件,此扩展包含编译代码 (Dll)、与该代码相关的其他文件以及描述性清单(包含包版本号等信息)
。
简单理解来说,它就是.net的包管理工具,可以将其类比于前端的npm,java的maven等,有了nuget来帮我们管理包,将大大方便我们的操作。
vs2019的NuGet包管理器截图:
首先是安装必要的工具,由于我这里是在 window 下创建 framework 的包,所以必须先下载nuget.exe,官方文档地址 --
安装nuget客户端工具
,具体环境对应的工具见下图:
三、开始创建项目
使用vs创建一个最基础的类库项目,写一些基本的代码,我这里简单创建了一个Tools的类库,写了一个简单的calculate计算类。
然后就是配置程序集信息,右键项目-属性,在打开的窗口中选择“应用程序”标签里的“程序集信息”按钮,填写你的程序集信息,也可以通过项目资源管理器下的Properties下的AssemblyInfo.cs文件直接修改,两者效果是一样的,如下图:
编辑程序集信息主要是为了后面生成nuget包时使用,将会依赖程序集信息生成 nuget 包的描述信息清单文件 *.nuspec。
四、使用nuget客户端工具生成nuget包
编辑完程序集信息后即可进入项目所在文件夹下打开命令行,使用
nuget.exe spec
命令来生成nuget包的描述信息清单文件 *.nuspec,运行完命令后会发现生成了一个默认的描述清单文件,你也可以进一步对其进行修改:
然后就可以使用打包命令
nuget.exe pack
生成nuget包了:
五、总结
至此nuget包就已经成功创建了,是不是很简单呢。后续你还可以将生成的 nuget 包发布到nuget官方网站供其它开发者下载使用,也可以推送到公司的内部私有仓库,仅供自己公司内部使用。
下回我将教大家如何搭建自己的 nuget 私有仓库,并将生成的 nuget 包push上去供内部使用,敬请大家关注。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
傲渊山岳
金牌会员
这个人很懒什么都没写!
楼主热帖
2022你不容错过的软件测试项目实战(we ...
Swift之Codable自定义解析将任意数据类 ...
SQL Server创建表
MySQL max() min() 函数取值错误
ThinkPHP5 远程命令执行漏洞
Java EnumMap put()方法具有什么功能呢 ...
变量的定义和使用
【微服务专题之】.Net6下集成微服务网 ...
2022年春节后这波疫情对于国内SAP咨询 ...
MySQL数据库-数据表
标签云
存储
服务器
快速回复
返回顶部
返回列表