手把手教你 通过 NuGet.Server 包 搭建nuget服务器,并使用桌面工具上传 nuget 包,免命令行

Posted webenh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了手把手教你 通过 NuGet.Server 包 搭建nuget服务器,并使用桌面工具上传 nuget 包,免命令行相关的知识,希望对你有一定的参考价值。

新建web项目

工具:VS2013

版本:.Net Framework 4.6,低版本也行,不过要找到对应版本的Nuget.Server

装了NuGet客户端(百度如何安装)

WebForm或MVC都行,此web项目将作为自己的NuGet服务器程序

技术图片

我建的是MVC项目

技术图片

安装NugetServer

工具栏—工具—NuGet包管理器—程序包管理器控制台

技术图片

技术图片

访问:https://www.nuget.org/packages/NuGet.Server/

技术图片

找到适合自己的版本,我这里选择的是最新的版本

执行命令:Install-Package NuGet.Server -Version 2.11.3

技术图片

中间NuGet会询问web.config、favicon.ico文件与项目默认的有冲突,是否覆盖,直接输入“Y”就行了。

发布站点

右键项目—发布—新建配置文件

技术图片

输入:MyNugetServer

技术图片

发布方法:文件系统

设置目标位置:D:TCProjectPublishMyNugetServer

完了点击发布

技术图片

搭建IIS站点

新建站点:MyNugetServer

右键网站—添加网站

技术图片

技术图片

没啥好说的,注意下应用程序池

技术图片

访问站点

http://你自己的ip/nuget/,要带nuget,用域名也行

技术图片

说明NuGet服务器已经搭建好了

申请api keys

网址:https://www.nuget.org/

先注册,再登录,完了获取api keys

技术图片

下载NuGet Package Explorer

需要用到工具:NuGet Package Explorer,这个工具非常好,再也无需在命令行操作了。

下载地址:http://npe.codeplex.com/

技术图片

点击download会自动跳转到下面的地址

https://npe.codeplex.com/releases/clickOnce/NuGetPackageExplorer.application

技术图片

双击运行

技术图片

创建新的package

技术图片

将你的dll文件直接拖到右侧框框里

技术图片

选择yes

技术图片

完了之后,左上角File—Publish

技术图片

技术图片

点击Publish,会报错:Failed to process request:’Access denied for package ‘TestDll’.’.

技术图片

原因是web.config里面没有配置api keys。还记得我们安装NuGet.Server时的冲突提示吗?

打开web.config,找到<add key="apiKey" value="" />,填写自己申请的api keys,并重新发布。

技术图片

提示成功:Package published successfully.

默认发布在Nuget服务端程序根目录下的Packages文件夹内

这个发布目录可以在web.config里面修改<add key="packagesPath" value=""/>

技术图片

验证

添加包源:工具栏—工具—NuGet包管理器—程序包管理器设置—程序包源

技术图片

完了之后,更新—确定。

技术图片

最后会看到我们提交的TestDll包。

安装后,项目的引用里面也会看到

技术图片

最后使用TestDll

技术图片

参考网址

解决:Failed to process request:’Access denied for package ‘TestDll’.’.

https://blogs.blackmarble.co.uk/blogs/rfennell/post/2012/10/31/403-and-413-errors-when-publishing-to-a-local-Nuget-Server

说下这个问题的解决过程,百度是搜索不到的,只能用代理访问谷歌。才找到解决方法。

用 NuGet Package Explorer 管理你的攻城武器

http://www.cnblogs.com/stoneniqiu/p/3740080.html

搭建自己的Nuget服务器

http://www.cnblogs.com/knowledgesea/p/5500954.html

发布有依赖关系的NuGet包

技术图片

技术图片

鼠标拖到最下边,点击“Edit dependencies”按钮

技术图片

技术图片

Package source填写自己的NuGet服务器地址,然后点击Reload,会看到已存在的包

双击选中的包

如果包太多,还可以搜索

技术图片

技术图片

接着就可以看到成功添加了依赖包

技术图片

然后再发布,就会看到已经上传到NuGet服务器上了

技术图片

在项目里引用:

 技术图片

技术图片

安装的虽然是TestDll,但是依赖的Newtonsoft.Json也会一起安装。

 

 
 

以上是关于手把手教你 通过 NuGet.Server 包 搭建nuget服务器,并使用桌面工具上传 nuget 包,免命令行的主要内容,如果未能解决你的问题,请参考以下文章

零基础秒懂:手把手教你搭建一套微服务框架!

手把手教你搭建高可用 RocketMQ 集群!

实战手把手教你从 0 到 1 搭建一套 RocketMQ 集群

我要手把手教你搭建一套抗瞬时百万流量的秒杀系统

手把手教你写一个脚手架

手把手教你用github pages搭建个人博客