如何使用跨平台工具创建 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 包。

时间: 2024-12-23 21:40:46

如何使用跨平台工具创建 NuGet 包(转)的相关文章

用命令行工具创建 NuGet 程序包

NuGet.exe 下载地址 本文翻译自: https://docs.nuget.org/Create/Creating-and-Publishing-a-Package https://docs.nuget.org/Create/Enforced-Package-Conventions 基本步骤 使用 nuget spec 命令生成 nuspec 文件 编辑 nuspec 文件,使用 nuget pack 命令打包 从程序集创建程序包 执行以下命令:生成  nuspec 文件: nuget s

使用GUI工具高效构建你自己的Nuget包

写这篇文章的原因是我在学习构建nuget包的时候,发现了一个官方推荐的GUI工具,而官方的工具介绍文章已经过时,一些地方和现在最新版本的工具有些差异,所以特意利用假期最后一个下午写下来,希望能帮助更多的人.毕竟,在我看来,从事..NET开发的很多朋友,并不是特别迷恋命令行这种看起来高大上但是实际上并没有高效可言的东西(起码在Windows平台上是这样吧) 下载与安装 您可以导航到这里下载并在线安装这个工具包,我目前没有找到离线安装包,但是索性codeplex不像nuget那么惨,时不时的被-是吧

使用命令行打包 nuget 包

对于那些不打算涉及这么复杂而又想制作自己的 nuget 包的园友们,我是推荐使用 Nuget Package Explorer 来制作的.关于这个图形化的 nuget 包管理软件的使用,博客园内有相关的文章,大家可以搜索看看. 好,回归正题.但是我们都知道,图形化最大的问题就是自动化不高. 这是我其中的一个 nuget 包,可以看见里面的文件还是比较多的,那么我每一次重新编译,需要发布新版本的时候,就得把里面大部分的文件都替换成新的文件.每次都一个一个的替换,烦啊.而且有时候还得担心有没有替换少

一个技术汪的开源梦 —— 基于 .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.

C# NuGet包管理命令

NuGet Package Manager Console 内置于 Visual Studio 在 Windows 2012 和更高版本. (不包含在 Visual Studio 用于 Mac 或 Visual Studio Code.) 控制台,你可以使用NuGet PowerShell 命令若要查找,安装. 卸载和更新 NuGet 程序包. 使用控制台是在包管理器 UI 不提供了如何执行操作的情况下必需的. 若要使用nuget.exe命令在控制台中,请参阅使用控制台中的 CLI nuget.

.Net core 还原Nuget包失败的解决方法

今天是2018最后一天了,真是神奇的一年啊,写个博客压压惊,来年继续加油吧..... 正文: 当我们打开.net core 项目时候,发现输出提示nuget包还原失败,这个时候首先要考虑.Net Core SDK的版本,可以用命令行去查看,命令行界面输入dotnet --version 就可以知道所安装的SDK是什么版本的了.如图,我安装的是2.1.502 版本 由于.net core 是向下兼容的,所以如果安装的是2.0,项目使用的又是2.1,那么有可能会造成nuget包还原失败. 如果版本和

C# 还原Nuget包失败的解决方法

当我们打开.net core 项目时候,发现输出提示nuget包还原失败,这个时候首先要考虑.Net Core SDK的版本,可以用命令行去查看,命令行界面输入dotnet --version 就可以知道所安装的SDK是什么版本的了.如图,我安装的是2.1.502 版本 由于.net core 是向下兼容的,所以如果安装的是2.0,项目使用的又是2.1,那么有可能会造成nuget包还原失败. 如果版本和项目的一样,或者更高,最好是一致.那么要考虑的是程序包源的问题了,这个时候需要设置一下. 首先

手把手教你 通过 NuGet.Server 包 搭建nuget服务器,并使用桌面工具上传 nuget 包,免命令行

新建web项目 工具:VS2013 版本:.Net Framework 4.6,低版本也行,不过要找到对应版本的Nuget.Server 装了NuGet客户端(百度如何安装) WebForm或MVC都行,此web项目将作为自己的NuGet服务器程序 我建的是MVC项目 安装NugetServer 工具栏—工具—NuGet包管理器—程序包管理器控制台 访问:https://www.nuget.org/packages/NuGet.Server/ 找到适合自己的版本,我这里选择的是最新的版本 执行命

Nuget包管理工具(程序包控制台执行语句)

NUGET命令 注:使用前确保nuget是最新版本,升级到最新版本有两种方式: (1).CMD将nuget升级到最新版本:nuget update -self (2).扩展中查看nuget是否需要更新. 一.安装 1.安装指定版本类库install-package <程序包名> -version <版本号> 2.安装到指定的项目install-package <程序包名> -project XXXProjectName -version <版本号> 二.更新