你知道怎么离线安装全局 node 模块吗?

大家平时是怎么离线安装 node 模块的呢?

前言

在平时的开发中,我们一般都是通过在线安装的方式来安装 node 模块的,但是也保不齐会有离线安装的需求。比如,公司内网是不联网的,那如果需要安装模块的话怎么办?

今天,我就通过离线安装全局 asar 模块来总结一个离线安装的 node 模块的方法。

准备工作

安装环境:MacOS

既然是离线安装,那首先就需要通过网络将对应的模块下载下来。本文中,通过 ​​npm install -D asar​​ 来下载 asar 模块及其依赖,文件结构如下:

你知道怎么离线安装全局 node 模块吗?_node_02

离线安装全局 asar

方法一的原理就和我们在线安装 node 模块一样,直接通过 ​​npm intall -g XXX​​ 来安装。

首先,我们在 asar 文件夹下新建一个 node_modules 文件夹,并将 ​​test/node_modules​​ 下除了 .bin 和 asar 之外的文件夹都移动到 ​​test/node_modules/asar/node_modules​​ 文件夹下,结构如下图:

你知道怎么离线安装全局 node 模块吗?_npm_03

在终端执行以下命令(路径为 ​​test/node_modules/asar​​ 的绝对路径):

 npm install -g /Users/code/test/node_modules/asar

然后在任意位置的终端中执行 ​​asar -V​​,验证是否安装成功,结果如下:

你知道怎么离线安装全局 node 模块吗?_npm_04

表示已经成功安装了 asar 模块,大功告成!

注意事项

在 MacOS 上,通过该方法安装的全局模块只是生成了一个全局指令的软连接,验证如下:

执行 ​​where asar​​,得到结果:

你知道怎么离线安装全局 node 模块吗?_node_05

然后前往路径 ​​/usr/local/bin/asar​​ 下找到 asar,查看其属性:

你知道怎么离线安装全局 node 模块吗?_node_06

所以,千万不要删除或者重命名 ​​test/node_modules/asar/​​ 文件路径,否则会导致全局 asar 失效!

在 windows 下,使用该方法后,整个 asar 文件夹被完整复制到了 ​​AppData/Roaming/npm/node_modules​​ 下,删除原 asar 文件夹不影响使用。

总结

以上就是离线安装全局 node 模块的一个简单方法,希望对大家能有所帮助!

当然,离线安装 node 模块的方法不止这一种,大家平时是通过什么方法离线安装 node 模块的呢?欢迎在评论区讨论交流!

~

~本文完,感谢阅读!

~

学习有趣的知识,结识有趣的朋友,塑造有趣的灵魂!

大家好,我是〖​​编程三昧​​〗的作者 隐逸王,我的公众号是『​​编程三昧​​』,欢迎关注,希望大家多多指教!

你来,怀揣期望,我有墨香相迎! 你归,无论得失,唯以余韵相赠!

知识与技能并重,内力和外功兼修,理论和实践两手都要抓、两手都要硬!