你知道怎麼離線安裝全域性 node 模組嗎?

程式設計三昧發表於2021-09-26

大家平時是怎麼離線安裝 node 模組的呢?

前言

在平時的開發中,我們一般都是透過線上安裝的方式來安裝 node 模組的,但是也保不齊會有離線安裝的需求。比如,公司內網是不聯網的,那如果需要安裝模組的話怎麼辦?

今天,我就透過離線安裝全域性 asar 模組來總結一個離線安裝的 node 模組的方法。

準備工作

安裝環境:MacOS

既然是離線安裝,那首先就需要透過網路將對應的模組下載下來。本文中,透過 npm install -D asar 來下載 asar 模組及其依賴,檔案結構如下:

image-20210926115136990

離線安裝全域性 asar

方法一的原理就和我們線上安裝 node 模組一樣,直接透過 npm intall -g XXX 來安裝。

首先,我們在 asar 資料夾下新建一個 node_modules 資料夾,並將 test/node_modules 下除了 .bin 和 asar 之外的資料夾都移動到 test/node_modules/asar/node_modules 資料夾下,結構如下圖:

image-20210926132845925

在終端執行以下命令(路徑為 test/node_modules/asar 的絕對路徑):

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

然後在任意位置的終端中執行 asar -V,驗證是否安裝成功,結果如下:

image-20210926133336939

表示已經成功安裝了 asar 模組,大功告成!

注意事項

在 MacOS 上,透過該方法安裝的全域性模組只是生成了一個全域性指令的軟連線,驗證如下:

執行 where asar,得到結果:

image-20210926133623569

然後前往路徑 /usr/local/bin/asar 下找到 asar,檢視其屬性:

image-20210926133832366

所以,千萬不要刪除或者重新命名 test/node_modules/asar/ 檔案路徑,否則會導致全域性 asar 失效!

在 windows 下,使用該方法後,整個 asar 資料夾被完整複製到了 AppData/Roaming/npm/node_modules 下,刪除原 asar 資料夾不影響使用。

總結

以上就是離線安裝全域性 node 模組的一個簡單方法,希望對大家能有所幫助!

當然,離線安裝 node 模組的方法不止這一種,大家平時是透過什麼方法離線安裝 node 模組的呢?歡迎在評論區討論交流!

~

~本文完,感謝閱讀!

~

學習有趣的知識,結識有趣的朋友,塑造有趣的靈魂!

大家好,我是〖程式設計三昧〗的作者 隱逸王,我的公眾號是『程式設計三昧』,歡迎關注,希望大家多多指教!

你來,懷揣期望,我有墨香相迎! 你歸,無論得失,唯以餘韻相贈!

知識與技能並重,內力和外功兼修,理論和實踐兩手都要抓、兩手都要硬!

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章