一、准备

1 . 下载 Download NuGet.exe

2 . windows 系统下设置环境变量 path中 或者 在dos 命令窗口下cd转到 nuget.exe 所在目录,这里为了每次使用方便,设置环境变量。

第一步:将下载的的NuGet.exe放到一个指定目录下,之后不要删除和移动,切记。

第二步:配置环境变量,向系统变量中,将刚才存放NuGet.exe路径追加到path 中。

3 .在Nuget官网 注册一个账号,并获取一个API Key。

第一步:登录,这里可以选择微软账号登录。

第二步:设置API Key

第三步:管理和获取Key

二、打包项目

1.新建里一个测试类库,书写部分类和方法

2.编辑AssemblyInfo.cs 信息
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices; // 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("Aliang.XmlHelper")]
[assembly: AssemblyDescription("一个简单的Xml帮助类库")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("暂无")]
[assembly: AssemblyProduct("Aliang.XmlHelper")]
[assembly: AssemblyCopyright("Copyright P R C 2022")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")] // 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)] // 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("5de5ae77-900c-4709-83dd-76c89718da63")] // 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
3.以Release模式发布代码,然后右击项目->在终端中打开

4.终端中执行命令,提示成功创建.nuspec文件成功

nuget spec

5.根据需要编辑.nuspec文件

$$符号代表的是变量值

<?xml version="1.0" encoding="utf-8"?>
<package >
<metadata>
<id>$id$</id>
<version>$version$</version>
<title>$title$</title>
<authors>Aliang</authors>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<license type="expression">MIT</license>
<!-- <icon>icon.png</icon> -->
<projectUrl>https://gitee.com/mingliang_it</projectUrl>
<description>一个简单的Xml帮助类库 </description>
<releaseNotes>初始版本</releaseNotes>
<copyright>$copyright$</copyright>
<tags>Tag1 Tag2</tags>
</metadata>
</package>

三、上传项目

1.生成上传文件包

执行命令 : nuget pack [项目名].csproj

用release编译打包:nuget pack [项目名].csproj -Prop Configuration=Release

比如:

nuget pack Aliang.XmlHelper.csproj -Prop Configuration=Release

2.在项目根目录下,已经生成好打包文件了

3.上传 nug.org 服务器

第一步:获取APIKey

上面已经Copy获取到的APIKey

第二步:设置APIKey,这个命令只需要第一次上传的时候执行,以后就不需要了

nuget setApiKey [Your-API-Key] -Source [Nuget官网上package路径]

比如:

nuget setApiKey 【替换成你的API-Key】 -Source https://www.nuget.org/api/v2/package/

第三步:上传文件包

nuget push [nupkg名称] nupkg -Source [Nuget官网上package路径]

比如:

nuget push Aliang.XmlHelper.1.0.0.nupkg -Source https://www.nuget.org/api/v2/package/

4.查看上传文件包

5.下载安装文件包

Nuget打包并上传教程的更多相关文章

  1. 使用nuget 打包并上传 nuget.org

    一. 准备工作 1 下载  Download NuGet.exe 2  windows 系统下设置环境变量 path中 或者 在dos 命令窗口下转到 nuget.exe 所在目录 3 在www.nu ...

  2. 打包新版本上传到AppStore时报错 ERROR ITMS-90034:

    今天打包新版本上传到AppStore时报错 ERROR ITMS-90034:"Missing or invalid signature.The bundle'com.xxx.xxx' at ...

  3. jenkins+svn完整打包并上传到linux服务器上

    因为公司用的是svn版本管理工具并且部署在了windows服务器上,所以测试环使用jenkins需要部署两套环境, 一套是在本地windows服务器,jenkins从svn下载代码完成打包并上传到li ...

  4. Spring MVC文件上传教程 commons-io/commons-uploadfile

    Spring MVC文件上传教程 commons-io/commons-uploadfile 用到的依赖jar包: commons-fileupload 1.3.1 commons-io 2.4 基于 ...

  5. Android Studio如何配置CURL指令一键打包apk上传至蒲公英

    Android Studio如何配置CURL指令一键打包apk上传至蒲公英 第一步:在所需要打包的模块build.gradle文件中加入如下代码: android{ buildTypes { //配置 ...

  6. 搭建自己的NuGet服务器,上传自定义NuGet包

    第一步搭建NuGet服务器 创建空Web项目 安装Nuget服务,目前最新版本2.8.2 安装完成,会自动生产服务,出现如下界面 发布该网站,并部署至IIS 将.nupkg文件发布至网站的Packag ...

  7. [自动运维]ant脚本打包,上传文件到指定服务器,并部署

    1.根节点使用,表示根目录为当前目录,默认启动的target为build,项目名称为othersysm, <project basedir="." default=" ...

  8. maven打包并上传到nexus3私服

    之前搭了个maven私服,接下来则要充分利用这个私服的优势上传自己的jar包了. 我们先在nexus上创建一个用来上传jar包的角色,并通过此角色创建若干帐号用来给开发者上传包.如图是我自己的配置: ...

  9. jenkins+svn 打包部署上传服务器并正常运行项目,从安装到使用

    以前写过一个版本,jenkins打包部署的全果然,然后...没保存,现在重新写一个版本从按照开始. 项目平时部署情况,svn拉代码,开发打包后进行给测试,测试上传到跳板机,杀掉以前项目进程,上传到服务 ...

随机推荐

  1. 多线程05:unique_lock详解

    unique_lock详解 一.unique_lock取代lock_guard unique_lock是个类模板,实际应用中,一般lock_guard(推荐使用):lock_guard取代了mutex ...

  2. 如何使用Python实现图像融合及加法运算?

    摘要:本篇文章主要讲解Python调用OpenCV实现图像融合及加法运算,包括三部分知识:图像融合.图像加法运算.图像类型转换. 本文分享自华为云社区<[Python图像处理] 五.图像融合.加 ...

  3. 一、深入学习c++先要练好的内功

    掌握进程虚拟地址空间区域的划分 课程讲的内容建立在x86 32位的Linux系统下. 任何的编程语言会产生两种东西:指令和数据.磁盘上的可执行文件在启动时都会加载到内存当中,但是不会加载到物理内存中, ...

  4. 渗透测试之sql注入点查询

    一切教程在于安全防范,不在于攻击别人黑别人系统为目的 寻找sql注入点方法: 拿到网页后进行查找注入点: 1.通过单引号 ' ;    在 url 后面输入单引号进行回车(如果报错可能存在sql注入为 ...

  5. 谷歌浏览器Chrome官方下载地址

    经常看到朋友的电脑上安装是魔改的谷歌浏览器.这里将谷歌浏览器官方的下载地址放在这里.有需要的朋友可以自己去下载. 下载地址 Chrome最新稳定在线安装版:https://www.google.cn/ ...

  6. 一张图进阶 RocketMQ - 整体架构

    前 言 三此君看了好几本书,看了很多遍源码整理的 一张图进阶 RocketMQ 图片链接,关于 RocketMQ 你只需要记住这张图!如果你第一次看到这个系列,墙裂建议你打开链接.觉得不错的话,记得点 ...

  7. JS:undefined number

    undefined数据类型:未定义属性 undefined 表示不含值 <script> var t1=""; var t2; if (t1===undefined) ...

  8. Python量化-如何获取实时股票信息

    如何获取实时股票信息 股票信息的接口有很多,之前大家常用的是新浪的,但在年初的时候,新浪的接口突然不能使用,给大家造成了很大的困扰,为此网上也有很多教程教大家如何从新浪获取数据,跟着教程弄了半天也不行 ...

  9. Linux 文件权限相关知识

    文件权限说明 Linux中的文件能否被访问和工具(程序)无关,和访问的用户身份有关(谁去运行这个程序) 进程的发起者(谁去运行这个程序). 进程的发起者若是文件的所有者: 拥有文件的属主权限 进程的发 ...

  10. js--js实现基础排序算法

    前言 文本来总结常见的排序算法,通过 JvavScript  来实现 正文 1.冒泡排序 算法思想:比较相邻两个元素的大小,如果第一个比第二个大,就交换它们.从头遍历到尾部,当一轮遍历完后,数组最后一 ...