记录VS2022离线安装NuGet包的过程

news2024/12/23 0:01:20

  离线安装NuGet包主要分为两个阶段:指定安装源及下载包及其依赖项。本文记录在VS2022中离线安装NuGet包的过程及注意事项。
  离线安装NuGet包,主要有两种方式:1)搭建局域网或本机NuGet服务器,将VS2022的源指定为NuGet服务器地址后安装,可以参考《学习在windows上搭建NuGet服务器》搭建NuGet服务器;2)将NuGet包文件复制到本机文件夹,直接指定该文件夹为NuGet包源,其实VS2022默认的包源中包含本机文件夹的包源(Microsoft Visual Studio Offline Packages),在NuGet包管理器中能够看到离线包源中的NuGet包清单,如下图所示:

在这里插入图片描述
在这里插入图片描述
  在VS2022中新建名为LocalNuGet的离线包源,将源指定为本地文件夹,下一步就是获取NuGet包,然后将其复制到文件夹内。
  获取NuGet包有以下几种方式:
  1)在NuGet官网或者其中NuGet服务网站中下载所需的NuGet包,然后将其复制到离线包源所在文件夹;
  2)将Microsoft Visual Studio Offline Packages中能用的离线包复制到离线包源所在文件夹;
  3)在能联网的电脑中使用VS2022在线安装所需的NuGet包,然后在本机当前用户下的nuget文件夹中(C:\Users\当前用户名.nuget\packages,如下图所示)复制所需的NuGet包,然后将其复制到离线包源所在文件夹。如果不清楚上述文件夹的位置,可以在VS2022的解决方案资源管理器->依赖项->包中指定包上点右键,选择“在文件资源管理器中打开文件夹”即可。

在这里插入图片描述在这里插入图片描述
  最后一点,也是很麻烦的一件事,即同步下载和复制NuGet包的依赖项到离线包源所在文件夹,找全依赖项以及依赖项的依赖项很麻烦,经常会漏项(联网使用VS安装包时,如果勾选了在线包源,安装本机离线包源中的包时,如果本机缺少包或依赖项,VS会自动在线安装)。获取依赖项主要有三种方式:
  1)使用nuget.exe下载NuGet包及其所有依赖项。nuget.exe会将包及依赖项下载到指定的文件夹内,具体用法详见参考文献4或百度,但是实际使用过程中不知道是不是使用的命令参数不对或不全,下载sqlsugarcore包时,虽然下载了几十项共计两百多M的内容,但是离线安装时还是报错少依赖项;
  2)在线安装所需NuGet包后,将本机当前用户下的nuget文件夹中(C:\Users\当前用户名.nuget\packages,如下图所示)的所有文件都复制到离线包源所在机器的文件夹内(本人电脑上packages中内容有将近10G,太多太大了,就没有试这种方式。有需要的可以找台没有装过NuGet包的机器,安装NuGet包后使用本机当前用户下的nuget文件夹内容,应该不会太大);
  3)使用nuget.exe下载依赖项后,离线安装时缺什么包就下载什么包,这种方式比较费时间,容易把人搞得很烦躁。

参考文献:
[1]https://blog.csdn.net/weixin_44084713/article/details/122827187
[2]https://www.cnblogs.com/uuum/articles/17478358.html
[3]https://www.nuget.org/
[4]https://learn.microsoft.com/zh-cn/nuget/consume-packages/install-use-packages-nuget-cli

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/880032.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【深度思考】聊聊CGLIB动态代理原理

1. 简介 CGLIB的全称是:Code Generation Library。 CGLIB是一个强大的、高性能、高质量的代码生成类库,它可以在运行期扩展Java类与实现Java接口, 底层使用的是字节码处理框架ASM。 Github地址:https://github.com/cglib/cgli…

掌握网络设备,畅游网络世界!

网络的搭建离不开网络设备,物理连接,以及设备之间的多种协议。其中在实现网络互通时,最常见的网络设备是路由器和交换机。 如今在各种级别的网络随处可见各种低、中、高端的路由器、交换机,种类繁多,这些不同种类的设备…

SpringBoot3集成Redis

标签:Redis.Mybatis.Lock; 一、简介 缓存在项目开发中,基本上是必选组件之一,Redis作为一个key-value存储系统,具备极高的数据读写效率,并且支持的数据类型比较丰富,在业务场景中的应用非常广泛…

【图像分类】理论篇 (4)图像增强opencv实现

随机旋转 随机旋转是一种图像增强技术,它通过将图像以随机角度进行旋转来增加数据的多样性,从而帮助改善模型的鲁棒性和泛化能力。这在训练深度学习模型时尤其有用,可以使模型更好地适应各种角度的输入。 原图像: 旋转后的图像&…

海外应用ASO优化的小技巧1

根据数据显示,用户需要7秒的时间来决定是否下载应用程序,所以应用的外观是用户决策的一个关键方面。 1、了解用户 63%的应用是通过应用商店搜索找到的,这是查找新应用最常见的方法。然而它也表明个人正在寻找特定的程序。了解用户想要做什么…

Qt 加载 libjpeg 库出现“长跳转已经运行”错误

在我以为升级到 Qt5.15.9 后,运行没有什么问题时,问题就来了 在加载 jpeg 格式的图片时,出现了“长跳转已经运行”的错误 这个错误一般是由 setjmp/longjmp 函数触发的,出现的可能的原因有以下几种(听听 chatgpt 的回…

存款多少可以不用上班?这组数据告诉你

手有余粮,心中不慌,兜里有钱才能大胆走四方。 最近,与“存款”相关的词条频繁登上热搜榜,比如#普通人存1万块需要多久#、 #你用多久攒到人生第一个10万元#、#月薪5000两年存了8万#、#超7成年轻人存款不足10万#等词条。 △ 截图来…

MySQL 45讲笔记(1-10讲)

1. SQL语句如何开始执行? MySQL分为Server和存储引擎两部分: Server层包含连接器、存储缓存、分析器、执行器等,以及所有的内置函数(事件、日期)等等,还有视图、触发器。 存储引擎是负责数据的存储和提取&a…

C语言暑假刷题冲刺篇——day1

目录 一、选择题 二、编程题 🎈个人主页:库库的里昂 🎐CSDN新晋作者 🎉欢迎 👍点赞✍评论⭐收藏✨收录专栏:C语言每日一练 ✨其他专栏:代码小游戏C语言初阶🤝希望作者的文章能对你…

airflow的安装

文章目录 前言一、Airflow基本概念1.概念2. 名词 二、Airflow安装1.Airflow官网2.安装python环境3. 安装anaconda34. 创建airflow虚拟环境5. 安装Airflow1. 更改pip源2. 安装airflow3. 初始化airflow4. 查看版本5. 查看airflow安装的路径6.创建账号7. 启动airflow调度8. 启动ai…

解决hbase节点已下线,但在status中显示为dead问题

工作中需要下线4台hbase小节点,下线完成后使用status 命令查看,有一台为dead状态: 使用status detailed 查看,发现“hd-03"这台节点是dead。 检查各节点配置文件无误,并使用 /opt/hbase/bin/hbase-daemon.sh restart master 重启两个…

改良版自编小程序上线啦---助力孟德尔随机化(Mendelian Randomization)数据挖掘

孟德尔随机化步骤相对简单固定,一共就是3步,但是如果我们一个一个的对研究变量和结果数据进行筛选,也是挺费时间的,在上篇文章《自编R语言小程序助力孟德尔随机化(Mendelian Randomization)数据挖掘》中,咱们自编了一个…

【ppt密码】忘记了PPT的密码,怎么办?

PPT文件设置了保护密码,但是密码忘记了,无法打开PPT文件、无法编辑PPT文件了该怎么办?PPT文件的两种保护密码该如何解密? 首先是打开密码 网上有一种解决方法: 1、重新命名PPT文件,将其后缀改为zip格式&…

字节跳动在PGO反馈优化技术上的探索与实践

背景 随着字节跳动的业务迅速增长,微服务的性能优化工作显得尤为重要,对于头部应用来说,提升若干百分点的性能也能为公司节省巨大的服务器资源成本。 编译器优化是软件性能优化的一种常用方法,相比其它特定的性能优化方法&#…

从零开始 Spring Cloud 11:Elasticsearch II

从零开始 Spring Cloud 11:Elasticsearch II 图源:laiketui.com 在上篇文章中我们学习了 es 的基本功能,在本篇文章中会学习 es 的一些高级功能,比如: 聚合查询自动补全集群部署 数据聚合 类型 **聚合&#xff08…

toB 业务分析

1、 如何透彻分析B端客户的需求? - 知乎我在讲《如何分析客户需求》这门课时,经常会问学员:“开发客户的最大困难是什么?”有人说价格高不好卖,有人说客户需求不好把握,有人说客户地处偏远,素养…

部署WMS仓储管理系统前要知道哪些关键点

随着物流行业的快速发展,WMS仓储管理系统解决方案已成为企业仓储管理的重要工具。然而,在部署WMS仓储管理系统之前,企业需要了解一些关键点,以确保系统的成功实施和高效运行。本文将介绍部署WMS前需要知道的关键点。 1、明确目标与…

一个小时入门 EJB

前置知识 在开始学习Java EE的Enterprise JavaBeans (EJB)之前,以下是一些你可能需要提前了解的技术和概念: Java基础:熟悉Java的基础知识,包括面向对象的概念(例如类、接口、继承和多态等)、基本的数据结…

【从零学习python 】27. Python 函数的使用及嵌套调用

文章目录 函数的文档说明1. 基本使用2. 高级使用 函数应用:打印图形和数学计算目标思考&实现1参考代码1 思考&实现2参考代码2 函数的嵌套调用进阶案例 函数的文档说明 1. 基本使用 def test(a, b):"用来完成对2个数求和" # 函数第一行写一个字…

产品需求管理软件:了解常见选择和功能

产品需求管理软件是一种非常重要的工具。它可以帮助企业更好地理解客户需求,提高产品开发效率并降低成本。本文将介绍一些常见的产品需求管理软件及其主要功能。 “产品需求管理软件有哪些?比较流行的有Zoho Projects、Trello、Asana、Smartsheet等。” …