你的位置:首页 > 软件开发 > ASP.net > 使用命令行打包 nuget 包

使用命令行打包 nuget 包

发布时间:2015-10-21 21:00:08
对于那些不打算涉及这么复杂而又想制作自己的 nuget 包的园友们,我是推荐使用 Nuget Package Explorer 来制作的。关于这个图形化的 nuget 包管理软件的使用,博客园内有相关的文章,大家可以搜索看看。 好,回归正题。但是我们都知道,图形化最大的问题就 ...

对于那些不打算涉及这么复杂而又想制作自己的 nuget 包的园友们,我是推荐使用 Nuget Package Explorer 来制作的。关于这个图形化的 nuget 包管理软件的使用,博客园内有相关的文章,大家可以搜索看看。

 

好,回归正题。但是我们都知道,图形化最大的问题就是自动化不高

使用命令行打包 nuget 包

这是我其中的一个 nuget 包,可以看见里面的文件还是比较多的,那么我每一次重新编译,需要发布新版本的时候,就得把里面大部分的文件都替换成新的文件。每次都一个一个的替换,烦啊。而且有时候还得担心有没有替换少了。那么自动化打包肯定是值得研究研究一番了。

 

在 nuget 官网上面我们可以找到一篇关于如何创建 nuget 包的教程:https://docs.nuget.org/Create/Creating-and-Publishing-a-Package。

使用命令行打包 nuget 包

那么我们先下载这个命令行工具下来。

 

然后准备我们需要打包的文件(就是 dll 之类的东西)。

看了下文档,说是支持读取直接 csproj 文件打包,那我们先试一下吧,毕竟程序员的准则就是能简单就简单,能懒就懒。

这里我的项目结构是这样的:

使用命令行打包 nuget 包

然后我们运行 cmd 并输入命令

使用命令行打包 nuget 包

报了个错,重新生成一下项目吧,再次运行。

使用命令行打包 nuget 包

好像成了,看看目录。

使用命令行打包 nuget 包

使用命令行打包 nuget 包

但是这 dll 所属的分类,错了吧,我建的可是 Win10 应用程序的 dll。。。

 

既然 csproj 方案不行的话,我们继续看文档。看见有一个通过描述 nuget 包的方案:https://docs.nuget.org/Create/Creating-and-Publishing-a-Package#create-the-manifest

要建立这么一个描述文件也很简单,跑个命令

使用命令行打包 nuget 包

使用命令行打包 nuget 包

然后我们用文本编辑器来打开这个新的 Package.nuspec 文件。

使用命令行打包 nuget 包

可以看见是一个

再次执行。

使用命令行打包 nuget 包

有警告,简单看了下,是说不知道应该打包哪些文件。

 

那么继续找找文档,最后我们可以发现这个。

使用命令行打包 nuget 包

修改下我们的 nuspec 文件。

使用命令行打包 nuget 包

新加上红色部分,也就是将这个 dll 打包进 nuget 包的 lib\uap10.0\ 这个目录里面。

再次执行打包命令。

使用命令行打包 nuget 包

这次没警告了。

而且包的结构也没问题。

使用命令行打包 nuget 包

那么只要编写好 nuspec 里面的 files 节点的话,以后执行 nuget pack XX.nuspec 这个命令的话,就能够简单地生成 nuget 包了。

 

为了再懒一点,我们将上面这个命令弄成批处理。

%~dp0nuget.exe pack %~dp0Package.nuspec -OutputDirectory %~dp0

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:使用命令行打包 nuget 包

关键词:get

get
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录