打包C#类库发布到Nuget.Org
1、第一步用任何可以创建C#类库的IDE创建一个类库A,当然你也可以创建多个类库,例如现在创建了类库A、B、C三个类库。
其中A引用B库,B库引用C库
2、类库准备好之后,接下来设置A、B、C三个类库的打包配置
3、分别在A、B、C三个类库的项目右键属性--打包,填写打包类库所需的包ID、包版本、作者、公司、产品、项目URL、存储库URL
存储库URL:github上项目的克隆地址:https://github.com/xxx/xxx.git
项目URL:github上的项目存储地址:https://github.com/xxx/xxx
4、由于A、B、C三个类库存在相互引用的关系,所以要把3个类库都打包分别发布到nuget上,因为目前没有找到好的可以打包为一个包
的发布方式
5、配置好之后就可以分别在类库项目右键属性--打包,就会在对应项目的bin目录下生成对应版本的.nupkg的nuget包文件了
6、登录nuget的官网https://www.nuget.org/,手动上传生成的.nupkg包文件,等待审核通过之后,即可在nuget.org上搜索到对应的版本包了
然后就可以通过管理项目的nuget程序包进行引用了
7、当然你也可以在github项目库上通过添加Action的方式添加.yml文件,来实现推送代码时自动向nuget发布对应版本的程序包
8、自动发布首先要登录https://www.nuget.org/,登录后在用户名下拉选项里选择API Keys,然后Create一个Key,Glob Pattern填写*,然后创建
创建完成后复制保存,因为只允许复制一次,所以复制后一定要把key值保持好备用,不然就得再重新生成一个新的key值了
9、登录github官网,找到你的项目库,选择项目的Settings选项卡,找到Secrets,添加一个key,key的名字要和.yml文件里要替换掉的变量名称一致
key的值就是你刚刚在nuget上复制保存的那个key值
10、然后在github仓储库新建Action,添加一个xxx.yml文件,输入以下内容,来实现推送分支的时候根据项目的版本号是否改变,来自动发布nuget程序包
11、xxx.yml内容的设置可以参考