如何下载npm离线安装包
如何下载npm离线安装包
如何将本地nodejs库,放入到nexus的npm库
在代码工程目录使用 npm install 安装 package.json 所依赖的文件,并依赖下载到 node_modules 目录
1、通过 package.json安装依赖
例如:项目依赖文件 package.json, 将其拷贝有网的机器,执行 npm install安装依赖
{"name": "test","version": "1.0.0""dependencies": {"base64-js": "^1.5.1"},"devDependencies": {"css-loader": "^1.0.0"}
}
2、查看依赖组件
执行npm install后会多出一个node_modules目录和一个package-lock.json文件,且node_modules 目录每个依赖项的都有一个package.json
[root@x test]# tree -C -L 3
.
├── node_modules # 已经下载完成的资源
│ ├── base64-js
│ │ ├── base64js.min.js
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── css-loader
│ │ ├── CHANGELOG.md
│ │ ├── index.js
│ │ ├── lib
│ │ ├── LICENSE
│ │ ├── locals.js
│ │ ├── package.json
│ │ └── README.md
│ ├── postcss-modules-values
│ │ ├── lib
│ │ ├── package.json
│ │ ├── README.md
│ │ ├── src
│ │ └── test
│ ├── .....
├── package.json # 项目所需要的各种模块配置信息
└── package-lock.json # 锁定实际已安装的各个npm package的具体来源和版本号
进入node_modules/base64-js目录,查看package.json文件,有个_resolved 属性是一个URL地址,在浏览器地址栏输入url即可下载,包名为:name+version就是tgz的包名;
[root@x test]# cd node_modules/base64-js/
[root@x base64-js]# ls
base64js.min.js index.d.ts index.js LICENSE package.json README.md
[root@x base64-js]# cat package.json
{"name": "base64-js","version": "1.5.1","devDependencies": {"babel-minify": "^0.5.1","benchmark": "^2.1.4","browserify": "^16.3.0","standard": "*","tape": "4.x"},"_resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz","repository": {"type": "git","url": "git://github.com/beatgammit/base64-js.git"},"...":"..."
}
查看package-lock.json文件,从resolved属性可以看到具体的下载地址
{"name": "test","version": "1.0.0","lockfileVersion": 1,"requires": true,"dependencies": {"base64-js": {"version": "1.5.1","resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz"},"css-loader": {"version": "1.0.1","resolved": "https://registry.npmjs.org/css-loader/-/css-loader-1.0.1.tgz"},"postcss": {"version": "6.0.23","resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz","dev": true,"requires": {"chalk": "^2.4.1","source-map": "^0.6.1","supports-color": "^5.4.0"},"dependencies": {"ansi-styles": {"version": "3.2.1","resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz","dev": true,"requires": {"color-convert": "^1.9.0"}},...}},...}
}
3、下载npm的*.tgz包
最终想要是base64-js-1.5.1.tgz这种npm包,以便于发布到私有npm仓库;
** 总结几种方式:**
3.1 方式1: 通过 package.json 的 _resolved属性链接下载
wget https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz
3.2 方式2: 通过 package-lock.json 的 resolved属性链接下载
wget https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz
3.3 方式3:本地直接打包方式
将组件目录base64js.min.js 、 index.d.ts 、 index.js 、 LICENSE、 package.json 、 README.md等文件拷贝到package文件夹里,然后执行如下命令,命名采用 name-version.tgz
tar -zcvf base64-js-1.5.1.tgz package
4、批量下载
使用**node-tgz-downloader工具下载
https://github.com/Meir017/node-tgz-downloader `
download-tgz package-lock package-lock.json
# 下载完成,查看依赖下载目录 tarballs 以及npm tgz格式的依赖
当包下载量过大时会提示下载失败,有可能是镜像仓库服务端做了限制,后续有时间自行实现下载,也快将文件分割成小份尝试,减少一次频繁下载量,尚未测试
[failed download tgz] undefined https://registry.npmmirror.com/happypack/-/happypack-5.0.1.tgz 4
[failed download tgz] undefined https://registry.npmmirror.com/isurl/-/isurl-1.0.0.tgz 5
[failed download tgz] undefined https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz 4
自己写了一个python的下载脚本:
批量下载npm离线安装包
如何批量上传npm到Nexus3、持续待更新
如何下载npm离线安装包相关推荐
- 如何下载flash离线安装包
如何下载flash离线安装包 CreateTime--2018年4月14日16:02:13 Author:Marydon 1.下载地址 UpdateTime--2018年5月13日16点55分 ppa ...
- 离线安装nginx(包括离线安装gcc-g++环境,免费下载gcc离线安装包)
离线安装nginx(包括离线安装gcc-g++环境) 有些时候我们的linux服务器无法连接公网的情况下就需要离线安装应用 检查电脑是否有gcc和gcc-c++环境 gcc -v g++ -v # 如 ...
- appinventor离线版下载_Chrome 离线安装包下载
从 chrome 官网下载 chrome 浏览器,一般都是先下载一个安装器,然后打开安装器再下载安装包进行安装,安装过程需要联网. 下面这几个连接可以直接下载完整安装包,直接打开,离线安装. 最新稳定 ...
- linux如何下载rpm离线安装包到本机
目的是下载rpm安装包,用于离线安装到其他机器上,两台机器的操作如下: 1.下载rpm包(这步在可以上网的Linux机器上操作): 1.1.确保本机linux可以联网: 1.2.执行指令,其中&quo ...
- 下载rpm离线安装包
离线安装rpm包 yum 离线源制作方法 好多公司的服务器为了安全起见没有办法:连接外网,如果有没有yum源的话 ,我们可以自制一个yum源拷进去进行安装. 一.下载离线包rpm 在有网络的电脑上将依 ...
- 从微软官网下载VS离线安装包的方法VS2017,VS2019
这里描述是包括所有版本,截图以下载VS2017社区版为例: ①登入VS官网下载页面,选择需要的版本点击下载,下载页点此进入. ②下载完成后,打开下载文件所在文件夹,Windows 8.1及以上版本用户 ...
- 下载 DropBox 离线安装包的方法
在我的电脑 FQ 后, 去到 Dropbox 官网下载的时候. 始终都下下载不下来. 不知道是网络原因, 还是什么原因. 使用 IDM 也没有下载下来. 在下载的时候回出现如下的状态: 现在我们只需要 ...
- vs2019 中文离线安装包下载,类似ISO
1. 通过在https://visualstudio.microsoft.com/zh-hans/downloads/ 下载VS2019, 之后会下载vs_enterprise__78682482.1 ...
- vs2019 中文离线安装包下载
1. 通过在https://visualstudio.microsoft.com/zh-hans/downloads/ 下载VS2019, 之后会下载vs_enterprise__78682482.1 ...
最新文章
- Linux+Qt 下同一数据空间vfork多进程间通信的一种高效便捷方式(信号槽直接调用)
- 2400门课:MIT 开放迄今最全 计算机+电气工程课程
- 解决flex4 分辨率自适应问题
- Python 列表的应用场景有哪些?你使用对了吗?
- delphi listview怎么自动宽度_自动门日常使用出现这些问题应尽快维修以免因小失大...
- vue错误:vue.esm.js?efeb:628 [Vue warn]: Error in render: “TypeError: Cannot read property ‘matched‘ of
- 学php记不住函数,为什么都是记不住PHP 的函数名
- 手把手教你学dsp_新课免费看| 手把手教你学DSP,C2000从入门到精通
- 【Tomcat】安装Tomcat服务器Tomcat的目录结构
- 图论算法:稳定婚姻问题,如何找到最适合自己的另一半
- Apache Flink 在快手的过去、现在和未来
- spinlock变量没有初始化
- Android自定义View——动态ProgressBar之模仿360加速球
- 大一linux考试试题及答案,大一计算机期末考试试题及答案
- 文献写作:学术研究论文
- 抖音巨量百应怎么入驻?
- Python每日一记179文氏图绘制
- coursera “the media could not be loaded either because the server or network falled...“解决办法
- 迭代器怎么就节省内存了?
- 基于Arduino的智能家居系统设计