win10 uwp 上传Nuget 让别人用我们的库

原创 2016年07月29日 15:38:49

Nuget

我们的开发经常使用别人的dll,那么我们需要每次都从网上下载,然后复制到我们的项目,

而不知道我们的dll是否安全?

当我们的库更新的时候,我们又需要从网上搜索,这样不好,于是我们就用Nuget,Nuget可以

让我们把我们做出来的东西发在网上让别人下载,需要搜索名称就可以下载,然后更新会通知

本文主要讲我们如何制作一个库上传Nuget,让别人可以使用,做法很简单,先下载软件后制作,上传。

下载

首先下载

nuget.exe https://dist.nuget.org/win-x86-commandline/latest/nuget.exe

如果没法下载和我说,我发给你

然后下载一个工具https://docs.nuget.org/Create/using-a-gui-to-build-packages,下载后运行

我们把Nuget.exe放在Path,当然不知道Path,就放在我们要打包的工程文件夹

打包Nuget

我们用MSBuild命令进入项目文件夹,如果找不到MsBuild就用cmd

项目文件夹就是我们要打包项目*.csproj所在文件夹

我的工程文件smms,打开smms.csproj所在文件夹A:\smms\smms

进入文件夹命令

首先进入盘,我是在A盘,


a:

然后进入文件夹


cd smms/smms

这里写图片描述

我们打包

首先

nuget spec

这里写图片描述

smms.nuspec 这个可以用文本打开,里面会自动替换

里面有


<?xml version="1.0"?>

<package >

  <metadata>

    <id>$id$</id>

    <version>$version$</version>

    <title>$title$</title>

    <authors>$author$</authors>

    <owners>$author$</owners>

    <licenseUrl>http://LICENSE_URL_HERE_OR_DELETE_THIS_LINE</licenseUrl>

    <projectUrl>http://PROJECT_URL_HERE_OR_DELETE_THIS_LINE</projectUrl>

    <iconUrl>http://ICON_URL_HERE_OR_DELETE_THIS_LINE</iconUrl>

    <requireLicenseAcceptance>false</requireLicenseAcceptance>

    <description>$description$</description>

    <releaseNotes>Summary of changes made in this release of the package.</releaseNotes>

    <copyright>Copyright 2016</copyright>

    <tags>Tag1 Tag2</tags>

  </metadata>

</package>
  • id

    包的ID:必须的唯一的ID,格式和C#命名空间规范相同,在你发布包的时候会去验证唯一性。

  • version

    版本号:必须的三段式的版本号,注意每次发布必须大于上一次的版本号,否则将会被nuget驳回。

  • title

    标题:非必需的,通常你可以让它和ID保持一致,但是这不是强制的。

  • authors

    作者(s):必须的项目,以逗号分隔作者列表。

  • owners

    拥有者:你可以随便写,但是在发布的时候会被你的nuget帐户名替代。

  • 最低客户端版本:描述这个包限制的最低nuget客户端版本。

  • iconUrl

    一个32*32像素的.png文件地址,作为最终在nuget中显示的图标

  • 描述、标签、许可地址、项目地址

  • Dependencies

    我们发的依赖其他程序,那就写他,具体怎么我还不知,我就放空,不管,好像写的要在NuGet服务器上能找到,否则无法完成自动引用添加

我们可以在vs,Properties打开,写上我们名字和说明

这里写图片描述

这里写图片描述

把全部写后生成

其中他会把$$代为AssemblyInfo.cs

作者代为AssemblyCompany

id代为Assembly名

version代为AssemblyVersion

description代为AssemblyDescription

做完我们文本打开 *.nuspec

改releaseNotes、tags

如果没有修改,我们打包 nuget pack *.csproj

这里写图片描述


问题: 删除示例 nuspec 值。

说明: Tags 的值“Tag1 Tag2”是示例值,应将其删除。

解决方案: 请替换为适当的值或删除它,然后重新生成程序包。

问题: 删除示例 nuspec 值。

说明: ReleaseNotes 的值“Summary of changes made in this release of the package.”是示例值,应将其删除。

解决方案: 请替换为适当的值或删除它,然后重新生成程序包。

把我们信息写后打包


nuget pack smms.csproj

这里写图片描述

我们就把我们项目打包,接着我们看到文件夹有*.nupkg

修改项目地址

这里写图片描述

上传

首先有一个微软账号,登录 https://www.nuget.org

点击自己 https://www.nuget.org/account

这里写图片描述

复制,这个key是我的,你的应该和我不同

这里写图片描述

刚才复制的

这里写图片描述

这里写图片描述

发布

我们可以在https://www.nuget.org/account/Packages

我们上传包,如果还要上传,我们的version要比之前大

我们在

这里写图片描述

搜索不到,不过我们还是上传了

安装

Install-Package ID

这里写图片描述

安装完搜索就可以搜索到

这里写图片描述

参见:http://www.cnblogs.com/xiaoyaojian/p/4199735.html

命令行使用Nuget

参见:https://docs.nuget.org/consume/command-line-reference

知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系

版权声明:http://blog.csdn.net/lindexi_gd 本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

win10 uwp 反射

本文在h神的指导下完成。 反射是强大的好用的,我们可以添加新功能不修改之前的代码,通过使用反射得到。 本文下面和大家说如何做一个和WPF一样的反射功能,如何才能获的 UWP 程序集所有类。...

C语言运行时库中哪些API在UWP中不可用?

_beep _sleep _seterrormode 这些函数在以前版本的 CRT 中已过时。 此外,对应 Win32 API 不可用于 UWP 应用。 无解决方法。 chdir _c...

可运行于Windows 10 UWP的Python解释器

运行于windows 10的python解释器的例子,由于主要是为了说明如何初始化python解释器,运行python脚本...
  • srplab1
  • srplab1
  • 2017年02月20日 21:04
  • 568

【UWP应用开发实战】第二弹 移动版秒变桌面版 实践:罗马数计算器

背景想想通用应用平台终于诞生了,正好又碰到两个挺有意思的题目:传送门:LeetCode 12 Integer to Roman(整型数到罗马数) 传送门:LeetCode 13 Roman to ...
  • NoMasp
  • NoMasp
  • 2015年10月24日 16:01
  • 3383

Win10 UWP 开发教程 课程 资源

  • 2017年09月27日 13:15
  • 48B
  • 下载

Win10/UWP新特性系列—使用打印机

微软在Win10时代终于完成的设备系统的大统一,"56个民族,56支花……"(⊙o⊙)…,既然统一了,那么也就意味着API也统一了,所以在UWP中,我们就可以使用统一的打印API来为设备(包括移动设备...
  • igweyou
  • igweyou
  • 2015年12月10日 09:26
  • 1006

win10 uwp 获得焦点改变

本文讲的是当我们应用失去焦点时,我们获得事件,当我们应用获得焦点,同样获得事件。同时,在应用不可以见时,我们也可以获得。...

Win10 UWP 开发系列:支持异步的SQLite

上篇文章已经实现了在UWP中使用SQLite作为本地存储,作为移动端的程序,及时响应用户的操作是提高用户体验的重要途径,因此UWP的很多api都是异步的。那么如何使SQLite支持异步呢? 参考SQL...
  • igweyou
  • igweyou
  • 2016年01月05日 10:00
  • 1188

win10 uwp 保存用户选择文件夹

如果我们每次把临时处理的文件保存,都要让用户选择一次,用户会不会觉得uwp垃圾?如果我们每次打开应用,都从某个文件读取,而这个文件不在应用目录和已知的目录,那么每次都需要用户选择,用户会不会觉得uwp...

win10 uwp 异步进度条

本文主要讲我设计的几个进度条,还有如何使用异步控制进度条,如何使用动画做进度。进度条可以参见:http://edi.wang/post/2016/2/25/windows-10-uwp-modal-p...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:win10 uwp 上传Nuget 让别人用我们的库
举报原因:
原因补充:

(最多只允许输入30个字)