zoukankan      html  css  js  c++  java
  • 如何内网搭建NuGet服务器

     NuGet 是.NET程序员熟知的工具,它可以直接安装开源社区中的各个公用组件,可以说是非常方便。不过,有些时候,公司内部的公用的基础类库,各个项目都有引用,但又不能发布到公共的NuGet服务器上,所以我们需要自己架设一个私有服务,通过NuGet 来的各个项目中用到的公共组件进行管理。就非常的方便。也便于组件版本的管理。

    一、NuGet网站构建

      1. 创建一个空的ASNET网站
       

       注意:将Framework 设置为4.6 以上,NuGet.Server库 要求.net framework 的版本是4.6 。

      2. 用NuGet为 NuGetServer 安装“NuGet.Server”库。
     
      安装成功后,你的Solution会变成这样一个结构。并且不需要写任何代码或更改任何配置,它已经可以运行了。运行此网站,如果看到下面的欢迎界面,就表示网站已经构建完成了。
       
       注意:Packages里只有一个readme.txt,这个目录是用来放NuGet包的,点击 here 连接,可以查看现有的包。
     

      3. 部署网站

      这也和部署任何一个ASP.NET网站完全一样。这里不细说。
     
     

    二、把代码打包为NuGet包

      1. 去Nuget官网下载nuget command line tool,

       下载地址:https://www.nuget.org/downloads

      2. 用Nuget打包

       Nuget 有两种打包方式:

       A:直接通过工程文件打包dll:

         1 创建一个类库,然后编译下。把刚才下载的nuget.exe拷贝到工程文件所在的文件夹中:

           

        2. 通过命令行来创建nuget包:nuget.exe pack

         

      B:使用nuget的spec文件进行打包,。

        1. 同样把要打包的DLL跟NuGet.exe放在一个目录下,用nuget spec命令创建一个nuspec文件:

        

        2. 打开Package.nuspec文件,可自定义一些配置,。

         注意:$description$使用AssemblyDescriptionAttribute的值进行替换,在产生package之前,一定要记得先编译项目,否则会提示$description$找不到的错误;

        3. 用 NuGet pack打包成Nuget包:

         

      至此打包完毕。

    三、 把NuGet包上传到服务器

      将打包好的.nupkg 文件 拷贝到 第一步中架好的Nuget服务器 的Package目录下。可以Nuget 服务中自己写一个文件上传的功能,来降低拷贝的麻烦。

     

    四、配置Visual Studio

      Nuget 服务已经架设成功,接下来就要在VS里配置NuGet 源,让其他的项目可以使用我们的NuGet服务器。
      选择工具-》Nuget包管理器-》程序包管理控制台,点击 配置图标:
       

       添加,设置本地的NuGet源名字和地址即可。注意:source 最后是 /nuget  

     
      完成后,我们的VS就可以从私服上安装NuGet包了。
     

    五、在其他项目中使用 

      到目前为止NuGet服务器端已经配置完成,类库和DLL文件的打包也介绍完毕, 接下来我们该如何在项目中引用内网NuGet 服务器中的包呢,步骤如下:

      1、 新建一个NuGetTest 项目,然后 工具-》Nuget包管理器-》程序包管理控制台 ,在命令行:install-package IKSDK 

       

      2、最后看看效果啦:

       

    至此,内网搭建NuGet服务器 的过程就介绍完了,,

  • 相关阅读:
    vue相关ajax库的使用
    vue-router核心概念
    Vue.js核心概念
    vue核心概念
    SQL 的各种 JOIN 用法
    应用Itextsharp 添加图片到pdf
    MVC区域路由设置
    LINQ to Entities 不识别方法“System.String ToString()”,因此该方法无法转换为存储表达式。
    使用命令行执行.sql文件
    MVC异常捕获处理,FilterConfig
  • 原文地址:https://www.cnblogs.com/zzp0320/p/7884413.html
Copyright © 2011-2022 走看看