项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦) 发布于 2018-05-10 13:49...更新于 2018-06-30 01:30 知道了 csproj 文件中的一些常用 NuGet 属性,创建 NuGet 包时就可以充分发挥新...Sdk 自动生成 NuGet 包的优势,不需要 nuspec 文件啦。...$(Authors): 包的作者;建议指定成在 nuget.org 上的用户名,这样访客可以点击包作者查看到包作者的信息;多个名字用分号分隔。...$(PackageTags): 标签,用分号分隔;指定多个标签有助于用户在 nuget.org 上搜索到你的 NuGet 包。
但是,您是否曾经尝试并创建过一个nuget包呢?Nuget软件包比较容易引入到类库中。因此,可以使用NuGet软件包管理器将nuget软件包添加到任何项目中。...现在已将其嵌入.nupkg中,但在早期版本的NuGet中只能定义为url。 .nuspec nuspec是关于nuget包的元数据文件。在早期版本中,它曾经用于打包nuget包。...例如,如果您的.csproj文件是多目标的,您可以像我一样看到每个目标框架的文件夹。 package: 此文件夹包含有关您的包的更多元数据文件。...此数据与您在nuget软件包列表中看到的数据相同:“创建者”,“描述”,“标识符”,“版本”和“关键字”。...创建你的第一个库 每一个开发者都应该知道类库。它们很难移动或用于不同的项目。因为它们的输出是dll文件。在本文中,我不会谈论如何构建库。我将展示如何将它们转换为可移植的nuget包。
本文告诉大家如何编写在编译过程修改打包文件 在项目文件的相同文件夹可以放一个 nuspec 用来告诉 VisualStudio 如何打包 现在尝试创建一个项目 NearjerbetearDeeyitoo...先来创建一个 nuspec 文件,把这个文件随意一个文件名ReresouJesou.nuspec,如果在 VisualStudio 使用某个 nuspec 文件打包,就需要在项目文件添加下面代码...在NuspecFile就需要指定nuspec文件所在的路径,这里用的是相对的路径。最后设置IsTool只是用来告诉安装 Nuget 的程序,这是一个工具 nuget 包没有引用。... 写一个 Target 需要给这个 Target 一个命名,还需要告诉 VisualStudio 在什么的时候才使用这个 Target 这里是在创建...nuget 文件的时候才使用。
打包成.nupkg包 首先运行.\nuget sepc 生成.nuspec配置文件,用于nuget的配置项 然后运行.\nuget pack packageName 发布成nuget包 3....注意 此类库更新版本之后,再打包成.nuget文件,是不会重新生成.nuspec文件。...dll是没Version, AssemblyVersion, FileVersion节点,需要自己手动添加;以及在更新版本后 .nuspec文件会根据版本重新创建一个: 1.3 配置nuget源 1....配置自己服务器的源 注意,如果用的是linux版本,测源地址中不需要加nuget子目录。...步骤如下(此nuget包不支持.net core版本): 3.1 搭建项目 创建一个mvc 项目(空) 此项目必须的.net Framework版本必须>=4.6。
,双击 Path 添加 c:\lindexi 就可以了 如果之前已经设置了环境变量,请尝试更新一下 NuGet 请使用下面命令 nuget update -self 在 NuGet 包显示图标的原理是在...nuspec 文件存在图标或图片链接 尝试使用 dotnet 打包的方法打包一个应用 在命令行输入下面代码创建一个 web 应用 dotnet new webapi -o Lindexi 这样就创建出一个...工具安装就可以打开 nupkg 文件 通过 VisualStudio 的 Nuget 包管理设置本地的包为 Lindexi.1.0.0.nupkg 文件的文件夹,就可以找到这个文件 在 VisualStudio...文件的文件夹,输入下面代码就可以重新打包 nuget pack 通过NuGet工具打开创建的 Lindexi.1.0.0.nupkg 的文件,可以看到图标 做到这个效果的另一个简单方法是在NuGet工具点击更改...,在 Icon Url 修改链接 通过文件 有小伙伴说他在清真的地方,无法下载到好看的图标,同时图标使用的是外面的链接,可能下载到的不是图片,所以微软建议将图标文件放在 NuGet 包里面 编辑 Lindexi.nuspec
本文告诉大家如何通过 VisualStudio 的新项目格式快速打出 Nuget 包 在对比之前使用 nuspc 文件创建 Nuget 包的方法,就会发现本文提供的使用 VisualStudio 新项目格式打出...从零开始打包 Nuget 只需要不到 3 分钟,其中有 2.9 分钟都是在等待 VisualStduio 卡 先来回顾一下之前是如何制作一个 Nuget 包的,首先通过 Nuget 创建一个空白的 nuspec...具体打包请看 win10 uwp 如何打包Nuget给其他人 而使用 VisualStudio 新项目格式打出 Nuget 包的方法很简单,首先是创建一个 dotnet core 项目,使用这个项目演示...如果想要自己定义一个 nuget 包的 id 和 AssemblyName 不相同,可以通过修改 PackageId 的方式,具体请看项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet...点击刚才创建的包 ? 这时就可以看到刚才快速创建的包 项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦) - walterlv 课件 ?
install 使用指定的源安装程序包。如果未指定源,则将使用 NuGet 配置文件中定义的所有源。如果配置文件未指定源,则使用默认的 NuGet 源。...list 显示给定源中的程序包列表。如果未指定源,则使用 %AppData%\NuGet\NuGet.config 中定义的所有源。...pack 基于指定的 nuspec 或项目文件创建 NuGet 程序包。 push 将程序包推送到服务器并进行发布。...sources 可以管理位于 %AppData%\NuGet\NuGet.config 的源列表 spec 为新程序包生成 nuspec。...如果此命令在项目文件(.csproj、.vbproj、.fsproj)所在的文件夹中运行,则它将创建已标记 化的 nuspec 文件。 update 将程序包更新到最新的可用版本。
简单来说,nuget包解决了dll引用的问题,开发者可以通过打包,然后发布到公有主机或者私有主机上,供其他开发者使用。可以大大的提高创建一个.NET应用的效率。...创建者:包的作者,创建一个项目,最终生成一个后缀名为.nupkg的文件,里面包含了编译代码DLL、与该代码相关的其他文件以及描述清单如版本等信息。...消费者:很好理解,就是我们从nuget获取包的开发者。 简单的总结下这几个角色的关系:创建者创建一个nuget包,并发布到主机上。...2.从项目中 生成nuget包(.nupkg文件),运行pack命令如下: dotnet pack ? nuget包已经生成了,什么是nupkg文件?.nuspec文件是包含程序包元数据的XML清单。...可以在微软文档中(https://docs.microsoft.com/en-us/nuget/reference/nuspec)找到有关nuspec的更多详细信息 发布包到公共Host 创建 API
打包Nuget 我们用MSBuild命令进入项目文件夹,如果找不到MsBuild就用cmd 项目文件夹就是我们要打包项目*.csproj所在文件夹 我的工程文件smms,打开smms.csproj所在文件夹...我们打包 首先 nuget spec ? smms.nuspec 这个可以用文本打开,里面会自动替换 里面有 nuget帐户名替代。 最低客户端版本:描述这个包限制的最低nuget客户端版本。...问题: 删除示例 nuspec 值。 说明: Tags 的值“Tag1 Tag2”是示例值,应将其删除。 解决方案: 请替换为适当的值或删除它,然后重新生成程序包。...问题: 删除示例 nuspec 值。
在 Github 会显示如何做 NuGet 的上传,上面的 GH_TOKEN 就是自己生成的代表自己密码,请看文档 创建用于命令行的个人访问令牌 - GitHub 帮助 大概的方法就是点击 Settings...lindexi -Password e9040b0fb3fbd0b4971660c1c04d615a630dce6e 接下来创建一个测试的 NuGet 包 dotnet new console -o...Lindexi_gd 然后编译生成 NuGet 库 cd Lindexi_gd dotnet pack cd bin\Debug 在 bin\Debug 文件夹可以看到 nupkg 文件,用下面命令上传...HehuhallqaLinearjeebar.Source 仓库,所以提示不能上传 此时可以通过在 .nuspec 文件添加 repository 属性,格式如下 lindexi Sample exists only to show a sample .nuspec
或 记事本,用来编辑文件 文件夹方式 一个可以解析的 nuget 包是需要包括指定的一些文件的,最主要就是.nuspec文件,其他的文件都不是必要的 下面来告诉大家做一个空白的 nuget 包 创建空白的...nuget 包 首先创建一个空白文件,文件的后缀名是 nuspec ,文件名就是打包名 下面我创建 lindexi.nuspec 这个将会打出空白的 nuget 包 使用 SublimeText 打开...现在在 lindexi.nuspec 相同文件夹创建一个文件夹 build 注意大小写,现在的文件看起来就是这样 ?...现在还不需要在这两个文件里面写东西,先来写一下需要引用的源代码 引用的源代码 为了方便告诉大家源代码包是如何做的,这里就不需要创建一个工程来写源代码,只需要在 lindexi.nuspec 相同文件夹创建一个文件夹...看到这里就是已经告诉大家做的源码包的最简单方法 安装源码包 打开 VisualStudio 创建一个新的项目,在 nuget 设置刚才的 nuget 包所在文件夹,然后点击浏览就可以安装 ?
可以去看一下NuGet 百度百科的介绍。 为什么用NuGet?...STEP5 产生并修改nuspec nuspec是NuGet将项目打包成nupkg的输入文件,可以通过nuget spec命令产生。...用记事本打开NuGetTest.nuspec文件,注意里面的$xxx$宏,这些就是引用了AssemblyInfo.cs中的设置值,在编译产生package的时候,会使用AssemblyInfo.cs中的相应值进行替换...完成编辑后,我们的nuspec文件如下: 包 在解决方案中右键解决方案—-管理解决方案的NuGet程序包—-联机,输入自己的类库包名。安装就可以了。
打包Nuget 我们用MSBuild命令进入项目文件夹,如果找不到MsBuild就用cmd 项目文件夹就是我们要打包项目*.csproj所在文件夹 我的工程文件smms,打开smms.csproj所在文件夹...A:\smms\smms 进入文件夹命令 首先进入盘,我是在A盘, a: 然后进入文件夹 cd smms/smms 我们打包 首先 nuget spec smms.nuspec 这个可以用文本打开,...owners 拥有者:你可以随便写,但是在发布的时候会被你的nuget帐户名替代。 最低客户端版本:描述这个包限制的最低nuget客户端版本。...改releaseNotes、tags 如果没有修改,我们打包 nuget pack *.csproj 问题: 删除示例 nuspec 值。...解决方案: 请替换为适当的值或删除它,然后重新生成程序包。 问题: 删除示例 nuspec 值。
前言 Nexus 是支持 Nuget、Docker、Npm 等多种包的仓库管理器,可用做私有包的存储分发,缓存官方包。...推送包的地址需要配置此仓库地址 nuget.org-proxy:代理存储库,缓存 nuget.org 的包并从本地服务器上提供它们 账号的规划及创建 一个企业可能存在着多个团队或项目组,每个团队的包可以分开或者约定好不同的名称前缀...为了更好的使用,可以结合脚本来快速打包,以之前的一个计算字段封装为例将其打包成 NuGet 包推送到 Nexus 中 目录结构如下 首先新建配置一个 .nuspec 模板,根据需要修改库的相关信息,nuspec.../Devops.Common.EvalSDK/Devops.Common.EvalSDK.csproj" #包配置 nuspec_path="Devops.Common.EvalSDK.nuspec...推送包的地址需要配置此仓库地址 docker-proxy:代理存储库,缓存 官方 docker 包并从本地服务器上提供它们 创建 docker-hosted 托管库,禁用重新部署,勾上允许部署 latest
打一个 dotnet tool 包,可以将这个包上传到 NuGet 上,小伙伴通过和安装 NuGet 相同方式就可以将工具安装在本机上。...本文将告诉大家如何手工打一个 dotnet tool 包,方便小伙伴自己写工具用来创建代码 所有可执行项目可以打包为 dotnet tool 包,通过 dotnet xx 的命令就可以执行对应的软件。...而 dotnet tool 包本身就是 NuGet 包,如果是在 dotnet 生成或 VisualStudio 中,只需要在 csporj 文件添加下面代码 true...包和其他的 NuGet 有什么不同 如果我需要手动打包,我先需要可执行文件,例如 Windows 下的 exe 文件,注意没有限制平台,也就是 Linux 也可以。...nuspec 文件,我期望阅读本文的小伙伴都知道 nuspec 文件应该如何写,我不会告诉大家细节 <?
的方法创建一个 NuGet 包,这是 VisualStudio 2017 的 VisualStudio 使用新项目格式快速打出 Nuget 包 功能很好用 ?...new nuget 就可以成功创建,创建完成需要修改相对文件夹,这个科技请看VisualStudio 给项目添加特殊的 Nuget 的链接 通过这个文件可以修改本地的输出 nuspec 文件,这个命令请看NuGet CLI spec command nuget spec LerewararraNurfabeyo.csproj 现在就创建了...包对应的 id 同时放在 build 文件夹里面,也就是打开 nuget包可以看到 build\id.targets 里面的代码才可以运行,关于这个文件请看代码 <?...命令打包 nuget pack LerewararraNurfabeyo.nuspec 将这个命令放在 package 命令文件,请看代码 这时打包完成的包是放在相同的文件夹,因为刚才已经用到在上一层的文件夹
在新的 VisualStudio 支持使用 NuGet 符号服务器,可以支持新的 Portable PDB 调试符号的库,本文告诉大家如何打包上传带符号的库和使用符号服务器 在 2018 的 11 月微软支持上传带符号的包到...NuGet.org 符号服务器,在使用 Visual Studio 2017 15.9 和以上版本可以支持打包 .NET Core 的 Portable PDB 符号的库,或者使用 nuget.exe...4.9.0 或 dotnet 命令行打包 创建的带符号的库的后缀是 .snupkg 下面是一些打包方法 使用 dotnet 命令行方法,以打包 Foo 项目为例 dotnet pack Foo.csproj...--include-symbols -p:SymbolPackageFormat=snupkg 使用 nuget 命令行的方法,请看下面代码,请将 Foo.nuspec 替换为你自己需要的打包文件...nuget pack Foo.nuspec -Symbols -SymbolPackageFormat snupkg 使用 msbuild 命令行的方法,请替换为自己项目 msbuild /t:pack
在包管理以前我们在项目中引用第三方包通常是去下载dll放到项目中再引用,后来逐渐发展成各种包管理工具,nuget就是一种工具,适用于任何现代开发平台的基本工具可充当一种机制,通过这种机制,开发人员可以创建...NuGet 客户端工具 要使用 NuGet,作为软件包使用者或创建者,可以使用命令行接口 (CLI) 工具以及 Visual Studio 中的 NuGet 功能。...创建发布包 首先需要设置属性,创建包需要以下属性。 PackageId,包标识符,在托管包的库中必须是唯一的。 如果未指定,默认值为 AssemblyName。...在包的 NuGet.org 页面上所示的包说明可以在 .csproj 文件中的 设置,或者通过 .nuspec 文件中的 $description 拉取。....nuspec 文件是包含包元数据的 XML 清单,.nuspec 当你创建包时将生成。
,让我们开始吧 创建类库 首先创建一个类库,就是你想要发布到nuget的类库,在AssemblyInfo.cs编辑程序集版本信息,重新生成,好了,这一步就完成了,哈哈哈 下载并注册nuget nuget....nuspec文件,比如我这里生成了ApiTokenAuth.Helper.nuspec。....2.0.0.nupkg -Source https://www.nuget.org/packages ok,上传完毕了,然后你就可以在nuget你的profile里看到对应的包了,刚刚上传的包会提示:...This package has not been indexed yet,需要等一段时间才会在nuget管理器中列出来,安静的等五分钟,你就可以在nuget管理器中搜索到你的包啦 调用命令上传的这一步有可能会报错...,你也可以直接到nuget网站上点击upload直接选择你的nupkg包文件上传 ?