Nuget多项目批量打包上传服务器的简明教程

栏目: IT技术 · 发布时间: 4年前

内容简介:本篇不会介绍Nuget是什么,如何打包上传Nuget包,怎么搭建私有Nuget服务器。这些问题园子里都有相应的文章分享,这里不做过多阐述。另外本文假设你已经下载了Nuget.exe,并且已经设置好了环境变量。什么?你还不会?那你先去百度下设置好后再来看这篇文章吧。实际项目中,我们可能一个解决方案下面会有N多个项目,每次发布这N多个项目都会使用统一的版本号一起发布到Nuget服务器。搜索了很久没找到一个好的方式,好在参考了abp vnext的打包方法实现了这个需求。因此分享下,希望对有需要的人有所帮助。作者:

本篇不会介绍Nuget是什么,如何打包上传Nuget包,怎么搭建私有Nuget服务器。这些问题园子里都有相应的文章分享,这里不做过多阐述。另外本文假设你已经下载了Nuget.exe,并且已经设置好了环境变量。什么?你还不会?那你先去百度下设置好后再来看这篇文章吧。 nuget下载

实际项目中,我们可能一个解决方案下面会有N多个项目,每次发布这N多个项目都会使用统一的版本号一起发布到Nuget服务器。搜索了很久没找到一个好的方式,好在参考了abp vnext的打包方法实现了这个需求。因此分享下,希望对有需要的人有所帮助。

作者:依乐祝

原文地址: https://www.cnblogs.com/yilezhu/p/12591174.html

首先看下图,每个脚本的作用我进行了注释,稍后我们再做进一步的详细阐述。在具体批量发布的时候,只需要先执行下 pack.ps1 脚本,然后再执行下 push_packages.ps1 脚本即可。当然还有一些参数需要根据你的项目来进行修改的。不过你不用担心,只需要按照下面步骤进行即可。

Nuget多项目批量打包上传服务器的简明教程

第一步,在 common.ps1 中配置我们的解决方案以及项目路径

我们把 $solutions 这个变量中的内容替换成我们的解决方案的相对路径。比如:解决方案在 E:\abp\abp\framework 这个路径,我们的脚本文件在 E:\abp\abp\nupkg 这个路径,那么我们就可以配置 framework 这个值就可以了。

Nuget多项目批量打包上传服务器的简明教程

第二步, pack.ps1 这个脚本基本不需要修改,这里只是进行下代码的解释

  1. 这里首先引入第一步的 common.ps1 脚本文件(因为需要用到上面定义的变量)
  2. 循环遍历 $solutions 变量,找到所有的解决方案,并执行 dotnet restore
  3. 这里才是打包的核心代码,遍历 $projects 并执行打包过程,然后把生成的 nupkg 文件拷贝到脚本所在的目录。

Nuget多项目批量打包上传服务器的简明教程

第三步, push_packages.ps1 脚本文件打包上传到服务器

  1. 这里首先引入第一步的 common.ps1 脚本文件(因为需要用到上面定义的变量)

  2. 从根目录下获取 common.props 文件中获取对应的版本号,并推送对应版本号的 nupkg 到服务器

    注意: common.props 文件需要你自行添加,这里面可以定义csproject文件所需要的一些变量

  3. 循环 common.ps1 脚本中的 $projects ,并执行推送过程。

  4. 最后修改 下你自己的 --api-key (Nuget管理的密钥)以及 -s (包源,如果你是自己搭建的私有nuget服务器,则这里需要替换成私有nuget服务器地址)

Nuget多项目批量打包上传服务器的简明教程

第四步,执行上传操作

  1. 进入到你的上面三个脚本的目录, Shift +鼠标右键,选择在此处打开 powershell 打开powershell命令窗口

  2. 依次执行下 .\pack.ps1push_packages.ps1 脚本即可。

  3. 这里你在执行 powershell脚本 的时候可能会报如下的 错误

    Nuget多项目批量打包上传服务器的简明教程

    这是由于操作系统默认禁止执行脚本,需要以管理员身份执行一次 set-executionpolicy remotesigned 然后输入 y 回车即可顺利执行。

    Set-ExecutionPolicy 可更改 Windows PowerShell 执行策略的用户首选项。要在 Windows Vista、Windows Server 2008 和 Windows

    的更高版本上运行此命令,必须使用"以管理员身份运行"选项启动 Windows PowerShell,

总结

本文参照abp vnext批量打包解决方案下面所有项目文件并上传到nuget服务器的方法实现了一个简单的Nuget多项目批量打包上传服务器的方法,希望对有需要的朋友有所帮助,当然,如果你有更好的方式也可以给我留言。感谢阅读。

下载地址

点这里下载: https://files.cnblogs.com/files/yilezhu/nupkg.zip


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

颠覆式创新:移动互联网时代的生存法则

颠覆式创新:移动互联网时代的生存法则

李善友 / 机械工业出版社 / 2014-12-1 / 69

为什么把每件事情都做对了,仍有可能错失城池?为什么无人可敌的领先企业,却在一夜之间虎落平阳? 短短三年间诺基亚陨落,摩托罗拉区区29亿美元出售给联想,芯片业霸主英特尔在移动芯片领域份额几乎为零,风光无限的巨头转眼成为被颠覆的恐龙,默默无闻的小公司一战成名迅速崛起,令人瞠目结舌的现象几乎都被“颠覆式创新”法则所解释。颠覆式创新教你在新的商业竞争中“换操作系统”而不是“打补丁”,小公司用破坏性思......一起来看看 《颠覆式创新:移动互联网时代的生存法则》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具