制作并发布 Nuget 包

环境:.Net Framework 4.7.2

参考链接:
创建并发布 NET Framework 包 (Visual Studio)

环境配置

一、下载 nuget:nuget.exe

二、放到一个目录,并把该目录添加到环境变量,确保能在命令行使用 nuget 命令

Nuget 信息配置

基本配置

一、使用 Visual Studio 打开项目

二、点击菜单栏-Project-xxx Proerties,点击 Assembly Infomation

三、修改信息

制作并发布 Nuget 包_第1张图片

四、在 xxx.csproject 同目录下执行命令

nuget spec xxx.csproj

会发现生成 xxx.nuspec ,打开该文件,修改对应的内容

制作并发布 Nuget 包_第2张图片

五、打包,执行命令

nuget pack

更多配置

一、添加 readme,参考:readme

在 xxx.nuspec 中添加以下内容

docs 目录为放置 readme.md 的目录(src 不知道干嘛的)

<package>
  <metadata>
    ...
    <readme>docs\readme.mdreadme>
    ...
  metadata>
  <files>
    ...
    <file src="..\readme.md" target="docs\" />
    ...
  files>
package>

发布

一、登陆 nuget ,参考链接:创建并发布 NET Framework 包 (Visual Studio),生成并复制 API 秘钥

二、使用下面命令发布

nuget push xxx.nupkg API秘钥 -Source https://api.nuget.org/v3/index.json

三、进入 包管理器 查看推送的包,大概 1-3 分钟后才会显示已发布

制作并发布 Nuget 包_第3张图片

下载和使用

一、打开 Visual Studio ,nuget 中搜索 SuperControls

二、点击安装即可
制作并发布 Nuget 包_第4张图片

FAQ

如何更新?

同一个版本号,推送的时候会提示 409,如下所示

409 (A package with ID ‘SuperControls’ and version ‘1.1.0’ already exists and cannot be modified.)。

这是微软规定,很无语的设定,规定同一个版本号就是无法修改,即使使用了 nuget delete 也无济于事

因此,如果一定要更新,只能用如下方式命名,参考 stackoverflow

1.0.0-alpha.1
1.0.0-alpha.2
1.0.0-release

你可能感兴趣的:(C#,microsoft,.net)