如何使用跨平台工具创建 NuGet 包(转)
原文地址
https://docs.microsoft.com/zh-cn/dotnet/articles/core/deploying/creating-nuget-packages
内容
对于 .NET Core 1.0,所有库都应以 NuGet 包方式发布。 实际上,这是所有 .NET 标准库的发布和使用方式。 可以使用 dotnet pack
命令轻松实现此操作。
假设你刚编写了一个很棒的新库,并想通过 NuGet 发布。 你就可以使用跨平台工具创建一个 NuGet 包,完全照做就行! 下例假定使用一个名为 SuperAwesomeLibrary 的库,该库以 netstandard1.0
为目标。
如果存在可传递的依赖项,也就是说,如果一个项目依赖于另一个项目,在创建 NuGet 包前,则需要确保使用 dotnet restore
还原整个解决方案的包。 否则将导致 dotnet pack
命令不能正常运行。
确认包已还原后,可以导航到库所在的目录:
$ cd src/SuperAwesomeLibrary
然后,只需在命令行中输入一个命令:
$ dotnet pack
/bin/Debug
文件夹现在如下所示:
$ ls bin/Debug netstandard1.0/ SuperAwesomeLibrary.1.0.0.nupkg SuperAwesomeLibrary.1.0.0.symbols.nupkg
请注意,这将生成能够进行调试的包。 如果想要生成二进制文件版本的 NuGet 包,只需添加 -c
/--configuration
开关并使用 release
作为参数。
$ dotnet pack --configuration release
/bin
文件夹现在将包含一个 release
文件夹,后者包含的 NuGet 包为二进制文件版本:
$ ls bin/release netstandard1.0/ SuperAwesomeLibrary.1.0.0.nupkg SuperAwesomeLibrary.1.0.0.symbols.nupkg
因此,现在可以使用此必需的文件发布 NuGet 包了!
不要混淆 dotnet pack
和 dotnet publish
务必注意,不是任何时候都涉及 dotnet publish
命令。 dotnet publish
命令用于在同一个包中部署具有所有依赖项的应用程序 - 而不是用于生成通过 NuGet 发布和使用的 NuGet 包。
-
博客地址:http://www.cnblogs.com/wolf-sun/
博客版权:如果文中有不妥或者错误的地方还望高手的你指出,以免误人子弟。如果觉得本文对你有所帮助不如【推荐】一下!如果你有更好的建议,不如留言一起讨论,共同进步! 再次感谢您耐心的读完本篇文章。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
2015-12-31 [实战]MVC5+EF6+MySql企业网盘实战(23)——文档列表
2014-12-31 Hello world,Hello 2015,Bye 2014