如何使用dotnetCli向nuget发布包
本篇内容介绍了“如何使用dotnet Cli向nuget发布包”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
创新互联是一家专业提供宁德企业网站建设,专注与成都网站建设、成都做网站、H5技术、小程序制作等业务。10年已为宁德众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。
长话短说, 今天分享如何在nuget.org创建并发布.NET Standard package。
前置
安装勾选.NET Core开发套件的Visual Studio; 安装dotnet Cli
从VS2017开始,dotnet Cli已经自动在.NET开发套件中被安装;使用
SDK-style format
(SDK属性)的.NET Standard项目需要dotnet Cli;nuget.exe Cli用于非SDK样式的项目(通常是.NET Framework)。
创建.NET Standard库项目
配置package属性
项目右键,选择 属性
--->打包
打包
面板只会出现在VSSDK-style
项目,典型如.NET Standard或者.NET Core库项目。
构建时生成Nuget包
:顾名思义,除打包命令,构建时也会自动生成nuget包;标记
:帮助其他人定位你的包,了解包的能力。
给package设定一个唯一id,并填写其他属性。注意这个package id需要在nuget.org全站唯一,我们建议你使用包前缀名来避免重复,比如:${UserName}.PackageName
打包
将配置改为 Release
右键项目--> 打包
如果你没有看到打包命令,你的项目可能不是SDk-style风格的项目,这是要使用 nuget.exe Cli(或者迁移到SDK-style项目,再使用dotnet Cli)。
Visual Studio构建项目并创建 .nupkg
文件,插看输出窗体,获取包文件的路径。
发布包
有了.nupkg文件,你可以从nuget.org获取一个API key(这个Key标记了你这个nuget账户),结合dotnet cli发布包。
获取API Key
登陆nuget.org账户 点击右上角你的账户名字,选择 API keys
创建---> 选择范围--> Push, 在Glob pattern填入* 一旦生成key,请尽早Copy并保存key,这个key将在dotnet Cli命令中用到
尽快保存你的key,如果你再次返回这个页面,你需要重新生成key并Copy.
发布包
转到包含.nupkg文件的目录,执行下面命令
dotnet nuget push AppLogger.1.0.0.nupkg -k qz2jga8pl3dvn2akksyquwcs9ygggg4exypy3bhxy6w6x6 -s https://api.nuget.org/v3/index.json
显示如下结果:
info : Pushing AppLogger.1.0.0.nupkg to 'https://www.nuget.org/api/v2/package'...
info : PUT https://www.nuget.org/api/v2/package/
info : Created https://www.nuget.org/api/v2/package/ 12620ms
info : Your package was pushed.
推送命令中的错误通常表明存在问题 , 如:
您可能忘记了更新项目的版本号,而尝试发布同签名的软件包。 您尝试使用主机上已存在的标识符发布程序包时,也会看到错误:名称“ AppLogger”已经存在。
Response status code does not indicate success: 403 (The specified API key is invalid,
has expired, or does not have permission to access the specified package.).
如果您确认使用的是有效 API key,则此错误提示不准确,实际是命名冲突,从以上错误的“权限”部分无法完全看出这一点。更改程序包标识符,重建项目,重新创建.nupkg文件,然后重试push命令。
其他一些包管理的操作,请在nuget包管理中心倒腾。
“如何使用dotnet Cli向nuget发布包”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!
当前题目:如何使用dotnetCli向nuget发布包
分享链接:http://scjbc.cn/article/jicedh.html