zoukankan      html  css  js  c++  java
  • .NET Core:搭建私有Nuget服务器以及打包发布Nuget包

    1. 使用docker搭建私有Nuget服务器
      docker run -d  -p 8080:80 --name mynuget -v $PWD/nuget/db:/var/www/db -v $PWD/nuget/packages:/var/www/packagefiles -e NUGET_API_KEY=ee28314c-f7fe-2550-bd77-e09eda3d0119  sunside/simple-nuget-server
      
      这里环境变量NUGET_API_KEY要记住后面的命令需要使用
      成功后如下图所示:
    2. 打包Nuget包
      语法:dotnet pack [--help] [--output] [--no-build] [--build-base-path] [--configuration] [--version-suffix] [project]
      需要注意的是如果已经存在的Nuget包,再发布是会提示错误的,如果不是正式版本的升级,则需要其他标识区分,如beta1,则执行的命令为dotnet pack --version-suffix beta1
      1.首先将目录转到对应项目目录
      2.执行(cmd powershell) dotnet pack 

      关于pack命令示例:

        dotnet pack

         dotnet pack -p:PackageVersion=2.1.0     //为包设置版本

      打包当前项目。

        dotnet pack ~/projects/app1/project.json

      打包 app1 项目。

        dotnet pack --output nupkgs

      打包当前的应用程序,并将生成的包放置到指定的文件夹中。

        dotnet pack --no-build --output nupkgs

      打包当前的项目到指定的文件夹中,并跳过生成步骤

    3. 将Nuget包发布到私有服务器
      项目目录下执行:
      cd .inDebug
      (默认生成nuget文件的地址)
      nuget push -Source http://192.168.211.129:8080/ -ApiKey ee28314c-f7fe-2550-bd77-e09eda3d0119 ClassLibrary.1.0.0.nupkg
      (这里的ApiKey则是第一步的环境变量详细参数查看https://docs.microsoft.com/zh-cn/nuget/tools/cli-ref-push

        查看本地nuget包源

      nuget sources list 
      
      

      查看特定nuget库中包含的包

      
      
      nuget list -Source "MyPackage"
      
      

      删除特定nuget库的包

      
      
      nuget delete TestPack 1.0.0 -Source "TestPack" -ApiKey ee28314c-f7fe-2550-bd77-e09eda3d0119
      
      

      清理本地nuget缓存

      
      
      dotnet nuget  locals all --clear
       
    4. Nuget.exe环境变量设置(使得cmd /powershell 可以识别nuget命令)
      下载Nuget.exe (下载地址https://dist.nuget.org/win-x86-commandline/v4.7.0/nuget.exe
      将Nuget.exe 放置 C:Program Filesdotnet目录下(一般安装了netcoreSDK 一定有这个目录)
    5. 引用私有服务器的Nuget包(配置程序包源引用时选择对应的程序包源)

       

       最后一点需要注意的地方新建类库的时候类库框架一定要选择你对应应用项目的框架(一般netcore项目创建的是netcore框架的类库,push命令是没有办法修改nuget包的框架的这点需要注意)

    6.  更多详细的nuget命令参考https://docs.microsoft.com/zh-cn/nuget/tools/nuget-exe-cli-reference 

  • 相关阅读:
    iOS热更新-8种实现方式
    HTTPS分析-简单易懂
    猖獗的假新闻:2017年1月1日起iOS的APP必须使用HTTPS
    iOS的ATS配置
    Objective-C中block的底层原理
    iOS系列文章
    UIViewController生命周期-完整版
    缩放因子和UI设计
    iOS APP 如何做才安全
    逆向工程
  • 原文地址:https://www.cnblogs.com/chongyao/p/9226363.html
Copyright © 2011-2022 走看看