Nuget的使用
前言
最近看到园子上有关于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的使用的更多相关文章
- NuGet镜像上线试运行
为解决国内访问NuGet服务器速度不稳定的问题,我们用阿里云服务器搭建了一个NuGet镜像,目前已上线试运行. 使用NuGet镜像源的方法如下: 1)NuGet镜像源地址:https://nuget. ...
- 通过ProGet搭建一个内部的Nuget服务器
.NET Core项目完全使用Nuget 管理组件之间的依赖关系,Nuget已经成为.NET 生态系统中不可或缺的一个组件,从项目角度,将项目中各种组件的引用统统交给NuGet,添加组件/删除组件/以 ...
- .NET Core 系列5 :使用 Nuget打包类库
NuGet是个开源项目,项目包括 NuGet VS插件/NuGet Explorer/NuGetServer/NuGet命令行等项目,.NET Core项目完全使用Nuget 管理组件之间的依赖关系, ...
- 如何在nuget上传自己的包+搭建自己公司的NuGet服务器(新方法)
运维相关:http://www.cnblogs.com/dunitian/p/4822808.html#iis 先注册一个nuget账号https://www.nuget.org/ 下载并安装一下Nu ...
- 简单搭建 nuget 内部服务器
搭建 nuget 内部服务器,最好的方式是使用 ProGet,参考博文<用 ProGet 搭建内部的 NuGet 服务器>,好处非常多,但需要使用 SQL Server 数据库,如果不想使 ...
- VS项目中使用Nuget还原包后编译生产还一直报错?
Nuget官网下载Nuget项目包的命令地址:https://www.nuget.org/packages 今天就遇到一个比较奇葩的问题,折腾了很久终于搞定了: 问题是这样的:我的解决方案原本是好好的 ...
- nuget常用命令
nuget命令的用法: 一.安装 1.安装指定版本类库install-package <程序包名> -version <版本号> 2.安装到指定的项目install-packa ...
- 用ProGet搭建内部的NuGet服务器
最近团队内部用的一个很简陋的NuGet服务器出问题了,nuget push发包,客户端显示发布成功,服务器上就是没有.懶得再去排查这个问题,早就想换掉这个过于简陋的NuGet服务器,借此机会直接弃旧迎 ...
- 用命令行工具创建 NuGet 程序包
NuGet.exe 下载地址 本文翻译自: https://docs.nuget.org/Create/Creating-and-Publishing-a-Package https://docs.n ...
- 搭建自己的Nuget服务器
序言 你们公司有没有好多项目,有没有好多类库,你们的类库是在tfs中管理,还是svn或者github,又或者是各自为政版本类库随意使用? 那么你们使用者写类库的时候方便吗? 有没有更新下载,版本不一致 ...
随机推荐
- Working with forms
翻译 Django文档 Version 1.5 https://docs.djangoproject.com/en/1.5/topics/forms Working with forms 关于此文章: ...
- WPF界面设计技巧(10)-样式的继承
原文:WPF界面设计技巧(10)-样式的继承 PS:现在我的MailMail完工了,进入内测阶段了,终于可以腾出手来写写教程了哈,关于MailMail的介绍及内测程序索取:http://www.cnb ...
- maven仓库总结,maven私服搭建
配置pom.xml依赖包时在这里找包的描述: http://search.maven.org/#browse 以java为根目录. mvn archtype:generate -DgroupId=zt ...
- JAVA中各种去除空格
1. String.trim() trim()是去掉首尾空格 2.str.replace(" ", ""); 去掉所有空格,包括首尾.中间 String str ...
- sscanf,sscanf_s及其相关使用方法
#include<stdio.h> 定义函数 int sscanf (const char *str,const char * format,........); 函数说明 sscan ...
- iOS 获取高速随机路径sandbox目录
NSLog(@"%@", NSHomeDirectory());//沙盒主目录 NSLog(@"%@", NSTemporaryDirectory());//砂 ...
- MySQL Full Join的实现
MySQL Full Join的实现 由于MySQL不支持FULL JOIN,以下是替代方法 left join + union(可去除反复数据)+ right join select * from ...
- 远程连接到vultr vps的mysql服务器
实验环境 vultr centos 6.7 x64 1. 首先要打开远程 vps的3306端口用于 mysql的连接 修改/etc/sysconfig/iptables 文件,添加3306端口的支持 ...
- Java 抽象工厂模式
抽象工厂模式(Abstract Factory Pattern)是工厂方法模式的进一步抽象,其英文原话"Provide an interface for creating families ...
- Flex发行2048游戏
近来的2048像挺火的游戏.在公交车,吃.甚至还有人走在路上拿着手机在玩.之前我看我的同事们戏,我认为这是很天真,中移动太无聊了吧 到后面,他是在,我觉得真的很无聊,这时候,无聊的时候无聊,后来我想用 ...