【引用】
何为NuGet?
Nuget是一个.NET平台下的开源的项目,它是Visual Studio的扩展。在使用Visual Studio开发基于.NET Framework的应用时,Nuget能把在项目中添加、移除和更新引用的工作变得更加快捷方便。
为什么要使用NuGet?
简单的说NuGet可以是我们的工作更方便,当我们的项目里要引用到的一些库时候,比如JQuery、Newtonsoft.Json、log4net等,我们需要从网上下载这些库,然后依次拷贝到各个项目中,当有的类库有更新时又不得不再重复一遍很是繁琐 ,这时就可以考虑使用NuGet来帮我们管理和更新这些类库,而且更新类库时会自动添加类库的相关引用,方便至极。当然网上一些我们常用的类库更新频率不是很高而且即便出了新版本我们也没必要总是保持最新,故这点对我们的帮助比较有限,个人认为NuGet最大的好处在于可以搭建自己的类库服务器,想想一下吧,在一些较大些的公司里面有很多的项目,然后其中有一些是整个组,甚至整个公司通用的类库,当这些类库有更新后我们需要依次拷贝到我们的项目,甚至于有时候我们自己都搞不清楚各个项目里的版本是否一致,有时偶尔一两个项目忘了复制更新出现莫名其妙的错误,为此头疼不已,现在有了NuGet,世界从此而不同。
下面具体说一下NuGet程序包的发布流程:
【流程】
准备:一个类库,NuGet.exe,API Key(NuGet官网注册获取),VS2012开发人员命令提示框
1、首先需要在VS上建立一个类库,并重新添加一个类,写一个测试方法:
2、下载NuGet.exe,与刚建立的类库放在同一目录下:
3、到NuGet官网注册一个账号,获取API Key,这个API Key 在NuGet程序包发布时需要用到。
NuGet官网地址:点击打开链接
4、打开VS2012开发人员命令提示
5、命令提示框内定位NuGet.exe所在目录,也就是刚建立的类库目录下:
6、通过命令 NuGet setApiKey xxxxx-xxxx-xxx-xxxx-xxxx-xxxx,设置API Key:
7、设置类库中AssemblyInfo类的版本信息:
8、通过命令 NuGet spec 生成xxxx.nuspec文件:
9、打开xxxx.nuspec文件,修改里面的内容,保存:
10、通过命令 NuGet pack xxxxxx.csproj 生成xxxx.nupkg文件:
11、通过命令 NuGet push xxxxx.nupkg ,将NuGet发布到服务器:
这样NuGet程序包就发布成功,推送到服务上。可以任意打开一项目,右击其解决方案——管理NuGet程序包——搜索——安装,即可使用。
【小结】
使用NuGet来帮我们管理和更新类库,确实很方便。这里只是初识NuGet,关键还是要学会如何去使用,真正的改自己带来方便。
在发布NuGet程序包的过程中遇到了这样一个问题:远程服务器返回错误:<403>已禁止,在下篇博客中给出答案。