离线环境使用NuGet
更新记录
本文迁移自Panda666原博客,原发布时间:2021年5月13日。
在Visual Studio中直接使用GUI的方式操作NuGet包非常的方便。如果喜欢命令行,也可以使用包管理控制台或者.NET CLI。对于线上的包,直接可以搜索进行安装。但有时候我们的一些私有的包存储在本地局域网内。想使用这些包也非常方便,具体操作如下。
过程中使用到的工具:
- Visual Studio 2019 Enterprise
- Visual Studio Code
- PowerShell,不是必须的。可以用CMD代替。
关于NuGet
如果您已经安装了VS 2017及以上版本的Visual Studio。默认已经自带NuGet包管理程序。
如果没安装VS。请到:https://www.nuget.org/downloads 自行进行下载安装NuGet包管理程序。

生成一个测试使用的NuGet包
注意:除了自己生成一个测试包,也可以是Nuget.org上下载的包用来做测试。
打开命令行或者PowerShell进行输入命令操作。新建一个测试使用的类库。
dotnet new classlib -n PandaTest
进入项目路径。
cd .\PandaTest\
使用Visual Studio Code打开该项目。
code .
将class1.cs类文件重命名为PandaTest.cs并修改内容,如下图所示。

打开命令行或者PowerShell进行打包类库为NuGet包。
dotnet pack --configuration Release
打包完成后会显示存放的目录。

创建本地NuGet源
在您需要的位置创建一个存放NuGet包的目录。这里存放在G:/盘下。可以直接鼠标操作在G:/盘下创建文件夹LocalPackages。也可以使用PowerShell命令行:
New-Item LocalPackages -Type Directory
将我们刚才打包的NuGet包放在该目录下做测试使用
Copy-Item "G:\PandaTest\bin\Release\PandaTest.1.0.0.nupkg" "G:\LocalPackages\"
配置 .NET CLI 的NuGet源
在命令行输入下列命令,将我们自定义的NuGet源加入到.NET CLI
dotnet nuget add source "G:\LocalPackages\"
测试使用本地NuGet包
切换到G:/盘根目录,新建Console项目。
cd G:/
dotnet new console -n "ConsoleProject"
切换到ConsoleProject项目目录。
cd ConsoleProject
引入我们刚才打包的NuGet包。
dotnet add package PandaTest
此时,CLI会自动去加载包,如下图所示。

流程也在图中体现出来了的,NuGet先访问https://api.nuget.org官方源头,没有查找到该包,然后再访问本地的我们自定义的源,最后安装成功。
安装好包后,使用Visual Studio Code打开该项目,并使用我们的引入的包。
code .
修改代码,如下图所示。

进行运行项目。
dotnet run
输出显示运行成功,至此我们已经完成了整个流程。

在Visual Studio中使用
我们刚才尝试了在CLI界面中操作NuGet包。在Visual Studio中使用也非常方便,添加我们定义的NuGet源即可。
具体操作流程:点击[工具] - > [nuget包管理器] -> [管理解决方案的nuget管理器] -> [程序包源]。
或者在界面中进行搜索。

然后添加源。

Visual Studio中的操作都是基于界面操作,在基本使用上有一定优势。但命令行在关键时候更加方便。总之,使用上的细节各有千秋,但底下本质都是一样。
离线环境使用NuGet的更多相关文章
- 在离线环境中使用.NET Core
在离线环境中使用.NET Core 0x00 写在开始 很早开始就对.NET Core比较关注,一改微软之前给人的印象,变得轻量.开源.跨平台.最近打算试着在工作中使用.但工作是在与互联网完全隔离的网 ...
- 在离线环境中安装Visual Stuido 2017
在离线环境中安装Visual Stuido 2017 0x00 写在前面的废话 因为工作上大多数都是在离线环境中进行的,进出离线环境很麻烦,所以之前很长一段时间都在使用VS2010.后来尝试换了VS2 ...
- 在离线环境中发布.NET Core至Windows Server 2008
在离线环境中发布.NET Core至Windows Server 2008 0x00 写在开始 之前一篇博客中写了在离线环境中使用.NET Core,之后一边学习一边写了一些页面作为测试,现在打算发布 ...
- 离线环境下安装ansible,借助有网环境下pip工具
环境 有网的机器(192.168.19.222):rhe65,python2.7.13,pip9.0.1 离线机器(192.168.19.203):rhe65,python2.6 FTP(192.16 ...
- Window离线环境下如何安装pyhanlp
Hanlp在离线环境下的安装我是没有尝试过的,分享SunJW_2017的这篇文章就是关于如何在离线环境下安装hanlp的.我们可以一起来学习一下! HanLP是一款优秀的中文自然语言处理工具,可以实现 ...
- [转]在离线环境中发布.NET Core至Windows Server 2008
本文转自:http://www.cnblogs.com/durow/p/5765145.html 0x00 写在开始 之前一篇博客中写了在离线环境中使用.NET Core,之后一边学习一边写了一些页面 ...
- Linux系统如何在离线环境或内网环境安装部署Docker服务和其他服务
如何在离线环境或纯内网环境的Linux机器上安装部署Docker服务或其他服务.本次我们以Docker服务和Ansible服务为例. 获取指定服务的所有rpm包 保证要获取rpm包的机器能够上网. 本 ...
- 使用Rainbond实现离线环境软件交付
一.离线交付的痛点 在传统行业,如政府.能源.军工.公安.工业.交通等行业,为了防止数据泄露和运行安全考虑,一般情况下网络会采取内外网隔离的策略,以防范不必要的风险,毕竟在安全防护方面,网络物理隔离是 ...
- 离线环境安装使用 Ansible
之前写了一篇介绍 Ansible 的文章 ,今天回顾看来写的有些匆忙,一些具体的操作步骤都没有讲明白,不利于读者复现学习.最近又申请了一个几百台机器的环境,正好借此机会把如何在离线环境中使用 Ansi ...
随机推荐
- Supervisor学习笔记
请点击我 > supervisor笔记
- python2.7安装pyinstaller
python2.7直接安装pyinstaller会报错,版本4与python2不兼容,所以我们安装时需指定兼容的pyinstaller版本号.安装命令如下: pip2 install pyinstal ...
- golang开发:go并发的建议
这个是前段时间看到Go语言的贡献者与布道师 Dave Cheney对Go并发的建议或者叫使用的陷阱(不是我自己的建议),结合自己最近几年对gorotine的使用,再回头看这几条建议,真的会茅塞顿开,觉 ...
- Ubuntu 安装cmake
Ubuntu 安装 cmake 官网 https://cmake.org 下载地址 https://cmake.org/download/ 参考文档 -<ubuntu下更新cmake版本> ...
- 帝国cms 7.5版列表页分页样式修改笔记
最近在用帝国改版我的个人博客站点,这个也是我第一次尝试用帝国来做博客,之前用过wordpress,每用一个新的程序,都会有些新的收获,也会学到一些新的东西. 在改用帝国之前,我也在网上大概了解了一下, ...
- 学习打卡——Mybatis—Plus
今天看完了Mybatis-Plus的视频,在某些方面来看MP确实简化了很多操作,比如自动生成代码等等.学习过程的代码实例也到同步到了gitee和github
- Py点亮
- javaScript 内存管理机制
大家好,今天分享的主题为 JavaScript 内存管理机制,本次分享将从以下三部分进行讲述: js 内存管理与 js 垃圾 常见的 GC 算法 V8 引擎的垃圾回收 js 内存管理与 js 垃圾 关 ...
- xss攻击和防御
简介 XSS攻击全称跨站脚本攻击,是为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS,XSS是一种在web应用中的计算机安全漏洞,它允 ...
- Python 爬取1688货源重量,自动发邮件到指定邮箱(qq),设置定时运行程序
1 # -*- coding: utf-8 -*- 2 # @Time : 2020/7/6 13:46 3 # @Author : Chunfang 4 # @Email : 3470959534@ ...