基于.Net Core 的组件Nuget包制作及发布是怎样的

发布时间:2021-12-29 19:45:43 作者:柒染
来源:亿速云 阅读:91

今天就跟大家聊聊有关基于.Net Core 的组件Nuget包制作及发布是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

微软的 ASP.Net Core 强化了 Nuget 的使用,所有的 .Net Core 组件均有 Nuget 管理,所以有必要探讨一下 .Net Core 组件制作 Nuget 包和发布。

之前 .Net Framework 程序集打包 Nuget 有以下方法:

1. 使用命令  nuget pack  详见博客园的一篇博文 《用命令行工具创建 Nuget 程序包》;

2. 使用 NuGet Package Explorer;

3. vs 插件 NuBuild Project System。

这其中第 3 种方法是最好用的,可以直接在 vs 中制作 Nuget 包,然后用方法 2 校验生成的 Nuget 包对不对或者微调发布,亦可以用 nuget 命令进行包的推送。

下面说 .Net Core 组件的打包

微软既然所有的 .Net Core 组件均有 Nuget 去管理,那它肯定会出一个打包工具或者命令,没错下面就开始说一下  dotnet pack  命令。

想必大家之前肯定用过 dotnet 相关的命令,那今天说一下它的打包命令 dotnet pack 这里的打包就是打成 nuget 包。

包生成

  执行命令 dotnet pack --help 看一下有啥子参数。

  -h 不用说了就是查看帮助;

  -o 指定生成的nuget包要输出到那个目录下;

  --no-build 打包时不要编译项目;

  -b 项目编译时的临时输入目录;

  -c 配置使用 Debug 模式还是 Release 模式(默认为 Debug);

  -version-suffix 如果 project.json 中的项目版本以 * 结尾,这个参数可以指定参数将 * 替换掉;

  -s 指定是否仅供内部 nuget 使用。

以下是简单示例:

1. project.json 文件目录下执行命令: dotnet pack -c Release -o Nugets 

2. 非 project.json 文件目录下执行命令:

 dotnet pack -c Release -o Nugets src\Wlitsoft.Framework.Common.Abstractions\project.json 

打包后会生成两个文件

    Wlitsoft.Framework.Common.Abstractions.0.1.1-Beta.nupkg

    Wlitsoft.Framework.Common.Abstractions.0.1.1-Beta.symbols.nupkg

第一个文件是 Nuget 包文件,第二个是包括源码的 Nuget 包文件。

命名规则为:项目文件夹名称 + 版本号(project.json 内指定的 version),没有搞明白怎么修改默认的命名生成规则。

注意:版本号后缀带 - xxx 标示预发行版本。

包检查

包已经生成成功了那咱用 NuGet Package Explorer 打开看眼生成的对不对,当然亦可用压缩文件软件将 nupkg 文件打开查看 nuget 包的描述文件。

基于.Net Core 的组件Nuget包制作及发布是怎样的

包上传

如果是开源项目的话,包可以上传到 Nuget 官方服务器,如果是公司内部私有项目的话那就上传到内部是私有 Nuget 服务器或者文件共享服务器中(Nuget 源支持文件共享源)。

1. 在 Nuget 官网上传。

基于.Net Core 的组件Nuget包制作及发布是怎样的

2. 使用 Nuget 命令上传

    该方法需要提交生成一个 key ,然后使用命令向 Nuget 服务器推送包。

基于.Net Core 的组件Nuget包制作及发布是怎样的

校验上传结果

打开 vs 的 Nuget 查询看有没有上传的包。

基于.Net Core 的组件Nuget包制作及发布是怎样的

看完上述内容,你们对基于.Net Core 的组件Nuget包制作及发布是怎样的有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

推荐阅读:
  1. 使用 .NET 平台,如何玩转 Universal Windows 应用?
  2. .NET Core中会遇到什么坑

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

nuget

上一篇:.NET Core首例Office开源跨平台组件NPOI Core怎么用

下一篇:.NET Core上的状态机库Stateless 3.0怎么理解

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》