前言

  搭建nuget服务器,这是上家公司进行类库管理的方式,其实优点很明显,

  1.代码保密

  2.代码重复利用效率高,这样不管任何项目只要知道nuget服务器地址就能直接调用

  3.可进行版本任意切换提高代码差异性管理

1.部署nuget 服务器

  因为我们的项目使用的是net core ,所以自己直接也是建立的net core项目,但是发现nuget server 不管是nuget server 还是nuget server core 对于net core 2.2 都不支持,故此选用了net mvc进行搭建nuget 服务(ps:如有解决请留言给我)。

  1.1.建立一个空项目这个很好解决在这不做过多阐述,如图:

  1.2.找到对应版本Nuget.Server

        

  我建的项目是基于.Net Framework 4.6.1 所以选择了3.4.1 版本,根据自己项目的版本选择对应的版本即可。选择之后项目中会自动生成Packages文件夹,修改web.config中  <add key="apiKey" value="npspackages2019" />q其中apikeyy用作上传包的key

    1.3.运行项目

  

那么nuget 服务就算搭好了,部署到iis即可。

2.nuget 打包

  在这里我没要用到的就是NuGet Package Explorer这个工具,下载即可。

  2.1打开NuGet Package Explorer出现启动界面,选择Create a new package(Ctrl+N)创建一个新包

  2.2、选择菜单 Edit > Edit Package Metadata (或者 CTRL + K) 编辑包包信息

  这里可以编辑类库包的信息和添加类库、程序集的引用解释下几个比较重要的字段:

  Id:用于定位类库包的唯一标示,

  Version:类库的版本号,这里建议和程序集的真实版本号保持一致,以免发生混淆

  Dependencies:此类库依赖的程序集,根据实际情况添加依赖类库的Id和版本号,若无留空即可,这里需要注意下填写的依赖类库需要在NuGet服务器上能找到,否则无法完成自动引用添加
  Framework assemblies:依赖的Framework 程序集,根据实际需要选择即可,一般无需设置
  除以上四项以外其他属性根据实际情况修改即可,若自己用不修改也中,不过为了使用方便还是建议把类库描述(Description)填写下

  2.3、添加dll

  右键-->Add
Existinng File... 选择dll添加,也可以直接拖拽DLL到 Package contents
窗口,此例选择拖拽方式,直接拖拽dll到窗口后,会出现提示:是否将 Winista.HtmlParser.dll放到lib
文件夹下,一般我们选择yes
  

信息修改和dll都添加完毕后,选择File --> Save(或Ctrl + S)将文件进行保存,默认文件名为Id + 版本号.nupkg 

 2.5、完成保存后如需要发布到网上,选择File--> Publish...(或Ctrl + P)


如果想要发布到nuget官网,发布 Key需要到官网去注册一个账号获取,方法一致。

3.使用

使用的时候和咱们使用公共的nuget 包一致。

  3.1添加包源

  3.2选择包源

  记得勾选【包含预发行版本】

这样nuget 包管理服务器就算搭好了。在版本中切换自己相应的版本即可。

     

  

搭建nuget 服务器的更多相关文章

  1. 如何内网搭建NuGet服务器

    NuGet 是.NET程序员熟知的给.NET项目自动配置安装library的工具,它可以直接安装开源社区中的各个公用组件,可以说是非常方便.不过,有些时候,公司内部的公用的基础类库,各个项目都有引用, ...

  2. 【转】如何内网搭建NuGet服务器

    原文:http://www.cnblogs.com/zhangweizhong/p/7755332.html NuGet 是.NET程序员熟知的工具,它可以直接安装开源社区中的各个公用组件,可以说是非 ...

  3. 搭建Nuget服务器

    1.新建一个web网站应用程序 (最好是ASP.NET空Web应用程序) 2.通过NuGet扩展 引用 NuGet.Server包 引用之后的项目结构为 将此网站部署到IIS上,即可访问,既搭建好了 ...

  4. 手把手教你搭建nuget服务器

    新建web项目 工具:VS2013 版本:.Net Framework 4.6,低版本也行,不过要找到对应版本的Nuget.Server 装了NuGet客户端(百度如何安装) WebForm或MVC都 ...

  5. 搭建Nuget服务器(Nuget私服)

    一.前言 对公司或者对个人来说,经过一段时间的沉淀之后,都会有一些框架或者模块,为了对这些框架或者模块进行更好的管理和维护,也为了方便后面的开发或者其他同事,我们可以在我们本地或者内网搭建一个Nuge ...

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

    新建web项目 工具:VS2013 版本:.Net Framework 4.6,低版本也行,不过要找到对应版本的Nuget.Server 装了NuGet客户端(百度如何安装) WebForm或MVC都 ...

  7. 搭建nuget服务器(二):制作nuget包

    生成nuget包可以使用nuget.exe或者下载nuget package explorer工具 nuget package explorer 下载地址:https://github.com/NuG ...

  8. 基于 BaGet 搭建 Nuget 服务器

    1 前言 1.1 BaGet 介绍 BaGet 是一个轻量级的,开源的,跨平台的 Nuget 和 symbol 服务器. 1.2 环境介绍 操作系统:CentOS 7 使用 Docker 安装 2 安 ...

  9. 搭建自己的NuGet服务器,上传自定义NuGet包

    第一步搭建NuGet服务器 创建空Web项目 安装Nuget服务,目前最新版本2.8.2 安装完成,会自动生产服务,出现如下界面 发布该网站,并部署至IIS 将.nupkg文件发布至网站的Packag ...

随机推荐

  1. 【题解】跳房子-C++

    Description奶牛按不太传统的方式玩起小朋友玩的跳房子游戏,现给出一个5*%的由数字组成的网格.它们在格子中向前前跳,向后跳,向左跳,向右跳,跳到网格中另一个数字后,又这样继续跳(可能跳到某个 ...

  2. pytorch实现yolov3(5) 实现端到端的目标检测

    torch实现yolov3(1) torch实现yolov3(2) torch实现yolov3(3) torch实现yolov3(4) 前面4篇已经实现了network的forward,并且将netw ...

  3. 【HDU - 3533】Escape(bfs)

    Escape  Descriptions: 一个人从(0,0)跑到(n,m),只有k点能量,一秒消耗一点,在图中有k个炮塔,给出炮塔的射击方向c,射击间隔t,子弹速度v,坐标x,y问这个人能不能安全到 ...

  4. 2019年7月19日 - LeetCode0001

    https://leetcode-cn.com/problems/two-sum/ 我的方法: class Solution { public int[] twoSum(int[] nums, int ...

  5. vijos p1484 ISBN号码

    #include<iostream>#include<string>#include<cctype>using namespace std;int main() { ...

  6. java多线程调用run和不调用run的区别

    当在java程序中创建一个线程的时候,会三种情况: 1,只运行run方法 2,先执行start,再执行run方法 3,只运行start方法 三者的区别如下: 运行方式 区别 只运行run 只运行run ...

  7. Python学习6——再谈抽象(面对对象编程)

    1.对象魔法 在面对对象编程中,术语对象大致意味着一系列数据(属性)以及一套访问和操作这些数据的方法. 使用对象而非全局变量以及函数的原因有多个,而最重要的好处不过以下几点: 多态:可对不同类型的对象 ...

  8. VMWare虚拟机:三台虚拟机互通且连网

    虚拟机:三台虚拟机互通且连网 目录 一.虚拟机 相关软件 虚拟机安装 Linux系统安装 1) 使用三个Linux虚拟机 多台虚拟机互通且上网 1) 多台配置注意事项 2) 虚拟机软件的配置 3) W ...

  9. 【Git】Found a swap file by the name ".git/.MERGE_MSG.swp"

    最近合并分支的时候总是遇到这个问题,导致合并之后还需要再提交一次--有点烦-- 解决方案: 在项目根目录(如/StudioProjects/demo/Leave)下,找到 .git/.MERGE_MS ...

  10. 【iOS】arc4random() 产生随机数

    通过 arc4random() 获取 0 到 x-1 之间的整数的代码如下: int value = arc4random() % x; 获取 1 到 x 之间的整数的代码如下: ; PS: 这里用到 ...