原文地址:
https://www.cnblogs.com/bluesummer/p/9047132.html
说明:
各位大神勿喷,自己最近在找工作,所以才将这些内容放在自己博客里,以便自己随时查看
打包dll发布到nuget服务器
几个月前上传过一次nuget包,结果好久不用,今天想更新下,完全忘记了怎么用了,又是一顿查,所以决定记录下来,当然这可能不是一个傻瓜式的教程,但聪明的你们应该能够看明白的,因为整体操作还是很简单的
好了,让我们开始吧
创建类库
首先创建一个类库,就是你想要发布到nuget的类库,在AssemblyInfo.cs编辑程序集版本信息,重新生成,好了,这一步就完成了,哈哈哈
下载并注册nuget
nuget地址:https://www.nuget.org/
你需要在这个网站注册一个账号,期间会有邮箱验证,验证成功之后就可以了
然后下载nuget.exe:https://www.nuget.org/downloads
下载最新版本的就可以,下载完成将nuget.exe放在需要发布的项目的根目录下,与.csproj工程文件在一个文件夹下
上传
然后打开命令窗口,cd转到该文件夹下
执行命令:
nuget spec
将生成.nuspec文件,比如我这里生成了ApiTokenAuth.Helper.nuspec。这个文件是一个对包的描述文件,需要打开编辑一下,如下是我编辑的内容
编辑完成之后保存,继续执行命令:
nuget pack ApiTokenAuth.Helper.nuspec
Nuget pack ApiTokenAuth.Helper.csproj
成功之后的界面如下
同时会生成一个ApiTokenAuth.Helper.nupkg文件
这个nupkg文件就是你的nuget包了,可以直接上传,或者用命令发布
用命令发布的话需要到nuget官网找到你的API-Keys,是一串字符,然后copy下来,设置到本地nuget里
nuget setApiKey MyAPIKey -Source https://www.nuget.org/packages
最后一步就是上传了,执行命令,这里有个apikey的选项,如果之前设置过了,则不需要填写
nuget push ApiTokenAuth.Helper.2.0.0.nupkg apikey -Source https://www.nuget.org/packages
ok,上传完毕了,然后你就可以在nuget你的profile里看到对应的包了,刚刚上传的包会提示:This package has not been indexed yet,需要等一段时间才会在nuget管理器中列出来,安静的等五分钟,你就可以在nuget管理器中搜索到你的包啦
调用命令上传的这一步有可能会报错,你也可以直接到nuget网站上点击upload直接选择你的nupkg包文件上传
搭建自己的nuget服务器 参考页面:https://docs.microsoft.com/zh-cn/nuget/hosting-packages/nuget-server#configuring-the-packages-folder