本篇经验将和大家介绍内网搭建NuGet服务器的步骤,希望对大家的工作和学习有所帮助!
NuGet网站构建
-
创建一个空的ASNET网站,如下图所示:
注意:将Framework 设置为4.6 以上,NuGet.Server库 要求.net framework 的版本是4.6 。
-
用NuGet为 NuGetServer 安装“NuGet.Server”库。
安装成功后,你的Solution会变成这样一个结构。并且不需要写任何代码或更改任何配置,它已经可以运行了。运行此网站,如果看到下面的欢迎界面,就表示网站已经构建完成了,如下图所示:
注意:Packages里只有一个readme.txt,这个目录是用来放NuGet包的,点击 here 连接,可以查看现有的包。
-
部署网站,这和部署任何一个ASP.NET网站完全一样,这里不细说。
END
代码打包为NuGet包
-
去Nuget官网下载nuget command line tool,下载地址:www.nuget.org/downloads。
-
用Nuget打包
Nuget 有两种打包方式,第一种是直接通过工程文件打包dll:
创建一个类库,然后编译下。把刚才下载的nuget.exe拷贝到工程文件所在的文件夹中,如下图所示:
-
通过命令行来创建nuget包:nuget.exe pack,如下图所示:
-
第二种方法是使用nuget的spec文件进行打包。
同样把要打包的DLL跟NuGet.exe放在一个目录下,用nuget spec命令创建一个nuspec文件,如下图所示:
-
打开Package.nuspec文件,可自定义一些配置。
注意:$description$使用AssemblyDescriptionAttribute的值进行替换,在产生package之前,一定要记得先编译项目,否则会提示$description$找不到的错误。
-
用 NuGet pack打包成Nuget包,如下图所示:
-
至此打包完毕。
-
把NuGet包上传到服务器
将打包好的.nupkg 文件 拷贝到 第一步中架好的Nuget服务器 的Package目录下。可以Nuget 服务中自己写一个文件上传的功能,来降低拷贝的麻烦。
END
配置Visual Studio
-
Nuget 服务已经架设成功,接下来就要在VS里配置NuGet 源,让其他的项目可以使用我们的NuGet服务器。
选择工具->Nuget包管理器->程序包管理控制台,点击 配置图标,如下图所示:
添加,设置本地的NuGet源名字和地址即可。注意:source 最后是 /nuget
完成后,我们的VS就可以从私服上安装NuGet包了。
-
在其他项目中使用
到目前为止NuGet服务器端已经配置完成,类库和DLL文件的打包也介绍完毕, 接下来我们该如何在项目中引用内网NuGet 服务器中的包呢,步骤如下:
新建一个NuGetTest 项目,然后 工具->Nuget包管理器->程序包管理控制台 ,在命令行:install-package IKSDK ,如下图所示:
-
最后看看效果,如下图所示:
至此,内网搭建NuGet服务器 的过程就介绍完了。