前言

最近看到园子上有关于NuGet (读音:new get)的使用,所以心血来潮也跟着学习做了一下,觉得很流b哦。于是也就记一下自己的学习心得(并非一味的重复轮子,只是觉得他人做的写的就是对的,自己做出来了,验证了才是真理)。以下就是学习的知识点总结:

一、NuGet的安装和使用公共包

1)、安装:在vs中选择【工具】---【扩展和更新】---安装NuGet程序管理包

2)、通过NuGet使用公共包

这是经常会用到的。例如使用NLog包来做日志记录管理,我们可以使用两种方式去引用NLog.dll

a、网上下载对应版本的dll,直接引用;(这个与Nuget无关)

b、使用NuGet获取:右键点击程序项目文件---【管理NuGet程序包】---查询NLog进行安装。

安装成功后,你会发现,程序中已经添加了NLog的引用,同时,在解决方案文件夹下可以找到关于NLog的不同版本的我文件

另:也可以通过对NuGet对已经管理的包进行更新操作(与安装包类似,此处略)。

二、通过NuGet对自己发布包的管理

1、建好自己的包,也就是程序集项目。

2、下载NuGet.exe,并执行nuget pack “自己的包”。注意:如果需要NuGet能够在任意文件夹下运行,需设定环境变量。

例如:

nuget pack ..\CommonCollection.Base.csproj -Build -Properties Configuration=Release

运行完语句后,会得到 CommonCollection.Base.1.0.nupkg 文件

3、创建一个Web空项目

4、通过NuGet添加NetGet.Server的安装,安装成功后,web空项目会自动添加多个文件

5、将2中得到的.nupkg文件和包对应的生成的dll、 pdb文件复制到Package文件夹下。如下图

运行web程序,转到Packages目录下

这样你就可以确定程序没有问题了。接下来就是发布了。

6、发布(与发布网站一样,略)

显示界面与5中运行时是一致的。

7、添加程序包源,【工具】--【选项】---【程序包源】---新建包源,源地址为6中网站地址

8、使用管理自己的包

这样就完成比较基本的管理了。

三、附:

1、注意.nupkg的生成和存放位置;

2、通过nuget管理包是注意包的版本与程序的兼容性,不应该随意更新。

3、我只能在.net framework4.5上去创建web,通过安装nuget.server创建nuget服务,4.0则不可行,提示nuget.core版本问题,很是郁闷。

另外:还有很多需要学习的东西,例如包版本的管理,如何通过批处理一键式操作,如何实现通过nuget分享自己的包等等。时间匆匆,等有时间再深入研究吧。

Ok! that's it!

Nuget的使用的更多相关文章

  1. NuGet镜像上线试运行

    为解决国内访问NuGet服务器速度不稳定的问题,我们用阿里云服务器搭建了一个NuGet镜像,目前已上线试运行. 使用NuGet镜像源的方法如下: 1)NuGet镜像源地址:https://nuget. ...

  2. 通过ProGet搭建一个内部的Nuget服务器

    .NET Core项目完全使用Nuget 管理组件之间的依赖关系,Nuget已经成为.NET 生态系统中不可或缺的一个组件,从项目角度,将项目中各种组件的引用统统交给NuGet,添加组件/删除组件/以 ...

  3. .NET Core 系列5 :使用 Nuget打包类库

    NuGet是个开源项目,项目包括 NuGet VS插件/NuGet Explorer/NuGetServer/NuGet命令行等项目,.NET Core项目完全使用Nuget 管理组件之间的依赖关系, ...

  4. 如何在nuget上传自己的包+搭建自己公司的NuGet服务器(新方法)

    运维相关:http://www.cnblogs.com/dunitian/p/4822808.html#iis 先注册一个nuget账号https://www.nuget.org/ 下载并安装一下Nu ...

  5. 简单搭建 nuget 内部服务器

    搭建 nuget 内部服务器,最好的方式是使用 ProGet,参考博文<用 ProGet 搭建内部的 NuGet 服务器>,好处非常多,但需要使用 SQL Server 数据库,如果不想使 ...

  6. VS项目中使用Nuget还原包后编译生产还一直报错?

    Nuget官网下载Nuget项目包的命令地址:https://www.nuget.org/packages 今天就遇到一个比较奇葩的问题,折腾了很久终于搞定了: 问题是这样的:我的解决方案原本是好好的 ...

  7. nuget常用命令

    nuget命令的用法: 一.安装 1.安装指定版本类库install-package <程序包名> -version <版本号> 2.安装到指定的项目install-packa ...

  8. 用ProGet搭建内部的NuGet服务器

    最近团队内部用的一个很简陋的NuGet服务器出问题了,nuget push发包,客户端显示发布成功,服务器上就是没有.懶得再去排查这个问题,早就想换掉这个过于简陋的NuGet服务器,借此机会直接弃旧迎 ...

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

    NuGet.exe 下载地址 本文翻译自: https://docs.nuget.org/Create/Creating-and-Publishing-a-Package https://docs.n ...

  10. 搭建自己的Nuget服务器

    序言 你们公司有没有好多项目,有没有好多类库,你们的类库是在tfs中管理,还是svn或者github,又或者是各自为政版本类库随意使用? 那么你们使用者写类库的时候方便吗? 有没有更新下载,版本不一致 ...

随机推荐

  1. Working with forms

    翻译 Django文档 Version 1.5 https://docs.djangoproject.com/en/1.5/topics/forms Working with forms 关于此文章: ...

  2. WPF界面设计技巧(10)-样式的继承

    原文:WPF界面设计技巧(10)-样式的继承 PS:现在我的MailMail完工了,进入内测阶段了,终于可以腾出手来写写教程了哈,关于MailMail的介绍及内测程序索取:http://www.cnb ...

  3. maven仓库总结,maven私服搭建

    配置pom.xml依赖包时在这里找包的描述: http://search.maven.org/#browse 以java为根目录. mvn archtype:generate -DgroupId=zt ...

  4. JAVA中各种去除空格

    1. String.trim() trim()是去掉首尾空格 2.str.replace(" ", ""); 去掉所有空格,包括首尾.中间 String str ...

  5. sscanf,sscanf_s及其相关使用方法

    #include<stdio.h> 定义函数 int sscanf (const char *str,const char * format,........); 函数说明   sscan ...

  6. iOS 获取高速随机路径sandbox目录

    NSLog(@"%@", NSHomeDirectory());//沙盒主目录 NSLog(@"%@", NSTemporaryDirectory());//砂 ...

  7. MySQL Full Join的实现

    MySQL Full Join的实现 由于MySQL不支持FULL JOIN,以下是替代方法 left join + union(可去除反复数据)+ right join select * from ...

  8. 远程连接到vultr vps的mysql服务器

    实验环境 vultr centos 6.7 x64 1. 首先要打开远程 vps的3306端口用于 mysql的连接 修改/etc/sysconfig/iptables 文件,添加3306端口的支持 ...

  9. Java 抽象工厂模式

    抽象工厂模式(Abstract Factory Pattern)是工厂方法模式的进一步抽象,其英文原话"Provide an interface for creating families ...

  10. Flex发行2048游戏

    近来的2048像挺火的游戏.在公交车,吃.甚至还有人走在路上拿着手机在玩.之前我看我的同事们戏,我认为这是很天真,中移动太无聊了吧 到后面,他是在,我觉得真的很无聊,这时候,无聊的时候无聊,后来我想用 ...