zoukankan      html  css  js  c++  java
  • Nexus第三章:使用Nexus搭建私有Nuget库-Windows篇

    一、前言

    Nuget是ASP .NET Gallery的一员,是免费、开源的包管理工具,专注于在.Net / .Net Core应用开发过程中第三方组件库的管理,相对于传统单纯的dll引用要方便、科学得多。其中nuget.org是最著名的Nuget公开库,但是企业内部开发的(业务)公共组件不可能都往公开库上传,所以,企业内部需要一个私有的Nuget仓库来支持。虽然微软有提供的Nuget Server,但Nuget Server用起来并不那么顺手,或者说感觉有点low。因此,本文将介绍Nexus搭建的Nuget仓库,希望能给大家多一个选择。

    二、下载安装Nexus

    具体操作请看这里

    三、Nuget仓库说明

    如上图所示,其实Nexus默认已经创建好了Nuget的仓库,并且是创建了3个不同类型的仓库:nuget-group,nuget-hosted,nuget.org-proxy

    nuget.org-proxy

    类型是proxy,表示代理仓库。我们向它请求包(package)的时候,如果本地有,它就从本地提供,如果本地没有,它会从nuget.org下载到本地,然后给我提供这个包。

    nuget-hosted

    类型是hosted,表示托管仓库。我们一般把自己开发的包上传到该仓库中。

    nuget-group

    类型是group,表示仓库组,它结合了nuget.org-proxy和nuget-hosted,能对外提供上述两者中的包。

    我们可以使用以上默认的几个仓库来保存nuget包,当然也可以自己创建先的仓库来存放,如下图:

    接下来我就以将包上传到默认的nuget-hosted为例。

    四、上传nuget包

    1、下载nuget命令行工具

    到 官网 下载最新推荐的nuget.exe,将下载的exe文件复制到C:WindowsSystem32目录,这样我们就可以直接使用nuget命令行了。

    2、添加Nuget Realms

    因为Nexus认证Nuget是通过Realms来认证,因此,要添加Nuget Realms。

    3、获取仓库地址以及Nuget API Key

    仓库地址在设置->选择仓库->复制地址,如下图:

    获取Nuget API Key

    输入登录密码即可,如下图:

    4、上传Nuget包

    这里默认大家已经准备好nuget包了,指令模板:nuget push {dll}.nupkg {apiKey} -source {http://customsource/}

    其中:

    {dll}.nupkg:nuget包所在的路径,可以是相对路径也可以是绝对路径

    {apiKey} 和{http://customsource/}:这两个在上一步已经交大家怎么获取了

    完整上传命令参考:nuget push E:WorkPlacevs2017TestErikDllErikDllinReleaseErikDll.1.0.0.nupkg eb0497e8-5519-3f22-8e9f-f2eae720feb5 -source http://192.168.132.137:8081/repository/nuget-hosted/

    完成后我们可以在Nexus上看到我们上传的包:

     五、在VS中使用Nuget包

    1、 打开Visual Studio的Nuget管理器,进行设置

    2、添加私有Nuget仓库地址

     3、引用nuget包

    解决方案右键->管理解决方案的nuget包

  • 相关阅读:
    对JAVA集合进行遍历删除时务必要用迭代器
    设计模式之单例模式(线程安全)
    List、Set、Map 和 Queue 之间的区别
    HashMap和Hashtable的区别
    Java WeakReference的理解与使用
    Java 理论与实践: 正确使用 Volatile 变量
    java中volatile关键字的含义
    最近5年183个Java面试问题列表及答案[最全]
    淘宝一月上钻是这样操作的
    Revit API找到风管穿过的墙(当前文档和链接文档)
  • 原文地址:https://www.cnblogs.com/wcrBlog/p/12273956.html
Copyright © 2011-2022 走看看