Nuget Server的搭建及实践之旅

一、 背景

在做的一个项目使用的是Asp.Net MVC,由于缺少规范与约束,团队成员在使用类库各自为政,时常出现路径和版本不一致的问题。在一个同事建议下,开始尝试使用Nuget 管理项目或公司使用的类库。

二、 搭建Nuget.Server

2.1 新建一个Web应用程序

    WebForm或MVC都行,建议新建一个空的Web应用程序,这里使用.Net Framework版本为4.6.1:

2.2 安装Nuget.Server

通过nuget包管理工具搜索nuget.sever或者使用“工具栏—工具—NuGet包管理器—程序包管理器控制台”进行安装都行,这里使用后者:

(1)访问:https://www.nuget.org/packages/NuGet.Server/ ,选择适合自己的Nuget.Server版本,我这里选择最新版本:

(2)执行命令:Install-Package NuGet.Server -Version 2.11.3。如果中间NuGet询问web.config、favicon.ico文件与项目默认的有冲突,是否覆盖,直接输入“Y”就行了。

(3)安装成功后,设置一下Web.Config里apiKey的值,默认为空,这是用来共享类库用的:

2.3 发布并部署站点到IIS

发布完成后,如果运行出现以下错误,请按照提示删除相应节点

重新运行,成功页面如下:

三、 使用手册

3.1 使用nuget.exe命令进行管理

命令很多,使用起来也没那么方便,这里介绍几个常用的命令:


命令


说明


示例


push


发布一个包到nuget.server,包名 apikey, -Source是必须的


.\nuget.exe push .\ClassLibrary1.1.2.0.nupkg samlong -Source http://localhost:56546/nuget


delete


从指定 -Source上移除一个包,必须指定版本


..\..\nuget.exe delete Nu.Common 1.0.0 samlong -Source http://localhost:56981/nuget


list


查看服务器上有那些nuget 包


.\nuget.exe list -Source http://localhost:56546/nuget

3.2 使用NuGet Package Explorer可视化管理

3.2.1 创建包

  • 打开NuGet Package Explorer

  • 选择“Create a new package(Ctrl+N)”

  • 右键->Add Lib Folder,添加lib文件夹(必须有)

  • 右键添加文件或将打好的包拖进来

  • 确认无误后点击保存

3.2.2 发布包

  • 点击“File->Publish”进行发布

  • 配置并发布

3.2.3 使用示例

  • 打开项目,右键->”管理NuGet程序包”:

  • 设置程序包源:

  • 选择刚刚添加的程序包源,即可以看到自己的发布的程序包:

  • 选择刚刚发布的程序包进行安装:

参考资料

1、  手把手教你搭建nuget服务器

2、  nuget服务器搭建,以及如何发布一个Nuget包

3、  无法添加引用。包“netMarketing”试图将 GAC 中不存在的框架引用添加到“netMarketing”中

原文地址:https://www.cnblogs.com/yscit/p/12002721.html

时间: 2024-10-21 09:54:45

Nuget Server的搭建及实践之旅的相关文章

手把手教你 通过 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/ 找到适合自己的版本,我这里选择的是最新的版本 执行命

Nuget Server 搭建

每个女人都有很多包包:其实男人也有,但只有会写程序的男人才有 -- 代码世界中的大"包"小"包".这些大包小包,有花钱买的,有从开源市场淘的,也有自己或同事亲手制作的. 包包有个特点:容易坏,更新快,新品多.于是,市场上有了包包专卖店,家里有了专门放包包的衣橱.于是,女人经常逛街买包包,经常整理衣橱里的包包.而男人呢,不喜欢逛街,不喜欢整理...面对越来越多的包包,很多人发出感叹:做"会写程序的男人"难! 终于有人无法忍受这些大包小包的困扰,一款

使用NuGet.Server搭建公司内部的Nuget(包)管理器

使用NuGet.Server搭建公司内部的Nuget(包)管理器 前言 Nuget是一个.NET平台下的开源的项目,它是Visual Studio的扩展.在使用Visual Studio开发基于.NET Framework的应用时,Nuget能把在项目中添加.移除和更新引用的工作变得更加快捷方便.这是维基百科中的定义,实际上Nuget就是一个包管理器,类似于Java的Maven,可以帮助我们更方便的管理dll. 相信每个人都从官方的nuget服务器上下载过一些第三方组件.如:log4net.qu

nuget.server搭建及实际测试

1.背景 由于所做项目越来越多,会积累一些公用组件,而每个项目中组件引用中如果组件有更新或者新增为了方便需要一个专门的工具进行管理,那么nuget就是不错的选择. 2.安装nuget.server 这里nuget.server就是一个管理程序包(组件)的服务端,我们可以通过这个进行公共组件的增删改查操作 2.1安装步骤 一.先新建一个空的asp.net web应用程序 二.通过nuget包管理工具搜索nuget.sever进行安装(安装过程最后面会提示web.config文件存在 点击覆盖就行)

使用Docker搭建GitLab实践

使用Docker搭建GitLab实践 SVN与GIT,二者皆须会 当前版本控制系统(Version Control System,VCS)有集中化版本版本控制系统(Centralized Version Control System,简称 CVCS)和分布式版本控制系统(Distributed Version Control System,简称 DVCS). 集中化版本控制系统的代表是SVN,分布式版本控制系统的代表是GIT. 熟悉SVN已两年,玩过SVNKIT.svn cli.pysvn,当然

Nuget私有服务搭建实战

最近更新了Nuget私有服务器的版本,之前是2.8.5,现在是2.11.3. Nuget服务器的搭建,这里有篇很详细的文章,跟着弄就好了: https://docs.microsoft.com/en-us/nuget/hosting-packages/nuget-server 不过我在做的过程出现了个令我非常困惑的问题:程序按部就班做好我就扔到IIS上,但一直提示404,但以前一直是好的,且这个问题基本上Google不到相关信息.经过一番倒腾排错之后我郁闷的发现错误的原因在于我的项目名称起了一个

TiDB 深度实践之旅--真实“踩坑”经历

美团点评 TiDB 深度实践之旅(9000 字长文 / 真实“踩坑”经历) 4 PingCAP · 154 天前 · 3956 次点击 这是一个创建于 154 天前的主题,其中的信息可能已经有所发展或是发生改变. 原标题:美团点评携手 PingCAP 开启新一代数据库深度实践之旅 一.背景和现状 在美团,基于 MySQL 构建的传统关系型数据库服务已经难于支撑公司业务的爆发式增长,促使我们去探索更合理的数据存储方案和实践新的运维方式.随着近一两年来分布式数据库大放异彩,美团 DBA 团队联合架构

.Net 【工作应用】 Nuget Server

1.为什么需要用nuget 引用第三方的dll文件 本公司的一些通用dll文件集中管理 便于多个系统对一些常用基础程序集的使用管理 2.如何搭建本地Nuget Server VS新建Web空应用程序,.Net Framework选择4.6(Nuget Server包的依赖) Nuget安装NuGet.Server 3.4.1(目前是最高版本,依赖于.Net Framework4.6,没有看到4.7和Core的版本) 修改Web.config的配置,发布nuget的密码 <add key="

Windows Server 2003搭建邮件服务器

由于Windows Server 2003默认是没有安装我们搭建邮件服务器所需要的POP3和SMTP服务的,因此需要我们自己来安装.方法如下: 1. 将Windows Server 2003的系统光盘放入光驱,或者将镜像文件挂载到虚拟光驱.在控制面板中点击“添加或删除程序”,在“添加或删除程序”对话框中,点击“添加/删除Windows组件”.Hn 2. 在“Windows组件向导”中,需要进行如下操作: ① 安装POP3服务. 选中“电子邮件服务”,双击打开,会看到它包括“POP3服务”和“PO