博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
离线下载解决Nuget程序包及其依赖包的方法
阅读量:4548 次
发布时间:2019-06-08

本文共 1179 字,大约阅读时间需要 3 分钟。

由于使用的一台电脑没有联网,但是需要asp.net core项目时使用到一个package,于是在nuget.org上手动下载。但是最后发现,依赖的包实在太多,手动下载太费时。于是晚上花时间研究了一下这个问题,随笔记录一下,作为个人分享。

解决这个问题,分为两个步骤:

  1. 利用nuget.exe在可联网的机器上下载需要安装的程序包。
  2. 将程序包拷贝到不联网机器,使用本地包源安装程序包。

步骤二可以参考我的这个(https://www.cnblogs.com/sper/p/5697441.html)难点主要在第一步,具体方法如下:

(1)下载nuget命令行程序nuget.exe

打开https://www.nuget.org/downloads,下载Windows x86 Commandline程序。这是解决手动下载依赖包弊端的根本解决方法。

(2)下载需要使用的程序包。

运行cmd打开命令提示符窗口,执行> nuget install <package_name> -SolutionDirectory <save_path> -PackageSaveMode nupkg

根据自己的实际情况,分别替换<package_name>和<save_path>。如果需要下载指定的包版本,通过 -Version 选项来指定包的版本。

下载的程序包以及所有的依赖包将会存储在<save_path>目录的packages文件夹下。

(3)拷贝下载的nupkg数据包。

为了减少拷贝文件的大小,我们只需要.nupkg格式的文件。此时,通过一段python程序来集中这些程序包的nupkg文件。代码如下:

import osfor pkg in os.listdir("packages"):    pkgpath = os.path.join("packages", pkg)    filename = "%s.nupkg" % pkg    fullpath = os.path.join(pkgpath, filename)    if os.path.isfile(fullpath):         open(filename, "wb").write(open(fullpath, "rb").read())    else:        print("%s is not exist." % filename)else:    print("Copy finished.")

将Python文件放在<save_path>目录下并执行,原本packages下近300M的文件,现在只需要拷贝38M的.nupkg文件即可。

转载于:https://www.cnblogs.com/sper/p/nuget-package-download.html

你可能感兴趣的文章
Vim 编辑器
查看>>
js跳转页面方法大全
查看>>
别名节点aliases
查看>>
BZOJ-10-1176: [Balkan2007]Mokia-CDQ第二类应用
查看>>
[C++]线性链表之顺序表<一>
查看>>
操作系统学习
查看>>
常用free文献数据库
查看>>
题目2
查看>>
js创建对象的方式 三种
查看>>
elementUI vue v-model的修饰符
查看>>
数组复制:关于java中引用传递的一个例子
查看>>
第九周PSP
查看>>
红帽linux忘记root密码的配置
查看>>
JS十进制转二进制(控制位数)
查看>>
Spark源码分析 – SparkContext
查看>>
tabBar选择不同item设置标题不同颜色
查看>>
机器学习算法一览图
查看>>
【BZOJ】3309: DZY Loves Math 莫比乌斯反演优化
查看>>
luogu1972:HH的项链
查看>>
矩形面积
查看>>