最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

手把手教你如何修改npm的全局安裝路徑

 更新時間:2025年04月27日 10:04:40   作者:2301_79940491  
這篇文章主要介紹了如何修改npm全局安裝路徑的相關資料,通過詳細圖文講解了如何創(chuàng)建自定義路徑、配置npm全局路徑和緩存路徑、驗證配置、配置環(huán)境變量、測試配置以及其他可選配置,需要的朋友可以參考下

前言

修改 npm 的全局安裝路徑可以通過以下步驟完成,確保全局包(使用 -g 安裝的模塊)和緩存文件存儲到自定義路徑。以下是詳細步驟:

1. 創(chuàng)建自定義路徑的目錄

在目標路徑下創(chuàng)建兩個文件夾,分別用于存儲全局模塊和緩存文件:

2. 配置 npm 的全局路徑和緩存路徑

使用 npm config 命令修改全局安裝路徑和緩存路徑:

# 設置全局模塊的安裝路徑(prefix)
npm config set prefix "D:\soft\node_repository\node_global"

# 設置緩存路徑(cache)
npm config set cache "D:\soft\node_repository\node_cache"

3. 驗證配置是否生效

執(zhí)行以下命令檢查配置是否成功:

# 查看全局安裝路徑
npm config get prefix  

# 查看緩存路徑
npm config get cache   

4. 配置環(huán)境變量(關鍵步驟)

為了讓系統(tǒng)識別全局安裝的命令(如 npm 全局包的可執(zhí)行文件),需要將新路徑添加到 環(huán)境變量 中:

⑴:添加 PATH 環(huán)境變量

Windows 操作步驟

右擊此電腦 → 點擊“屬性” → “高級系統(tǒng)設置” → “環(huán)境變量”。

在“系統(tǒng)變量”中找到 Path 變量,點擊“編輯”。

新增以下路徑:

D:\soft\node_repository\node_global(全局模塊的根目錄)

D:\soft\node_repository\node_global\node_modules\.bin(全局模塊的可執(zhí)行文件目錄)

點擊確定保存。

⑵.(可選但推薦):設置 NODE_PATH

如果全局模塊需要被 Node.js 項目直接引用,添加 NODE_PATH 環(huán)境變量:

  • 在“系統(tǒng)變量”中新建變量:
    • 變量名:NODE_PATH
    • 變量值:D:\soft\node_repository\node_global\node_modules

5. 測試配置

⑴ 安裝一個全局包

npm install -g pm2  # 例如安裝 pm2
  • 檢查安裝路徑:D:\soft\node_repository\node_global\node_modules下應出現 pm2 目錄。

⑵.驗證命令是否生效

pm2 -v  # 應顯示 pm2 的版本號

6. 其他可選配置(提升體驗)

⑴ 設置淘寶鏡像加速下載

npm config set registry https://registry.npmmirror.com

⑵.檢查完整配置

npm config list  # 查看所有 npm 配置

prefix(全局路徑)和 cache(緩存路徑)的區(qū)別

(1) prefix(全局路徑,如 D:\node_global)

  • 存儲內容:已安裝的全局 npm 包的最終版本。
  • 作用:存放通過 npm install -g 安裝的完整包文件(如 node_modules 目錄下的模塊)和可執(zhí)行命令(如 webpackpm2)。
  • 文件結構示例
    D:\node_global\
    ├── node_modules\
    │   ├── package1@1.0.0\
    │   ├── package2@2.3.1\
    │   └── ...
    └── node_modules\.bin\
        ├── executable1.exe
        └── executable2.sh

(2) cache(緩存路徑,如 D:\node_cache)

  • 存儲內容:下載的包的原始壓縮文件.tgz)和元數據(如哈希校驗值、索引文件)。
  • 作用:臨時存儲下載的包,供后續(xù)安裝時快速復用,避免重復下載。
  • 文件結構示例
    D:\node_cache\
    ├── _cacache\
    │   ├── content-v2\  # 存儲原始 .tgz 包(二進制文件)
    │   ├── index-v5\    # 存儲元數據(如包的哈希值、下載時間等)
    │   └── tmp\         # 臨時文件
    └── ...其他配置文件

為什么不會“下載兩份”?

npm 的安裝流程如下,不會重復下載包

  • 下載階段

    • 當執(zhí)行 npm install -g package 時,npm 首先檢查 cacheD:\node_cache)中是否有該包的壓縮文件(.tgz)。
    • 如果沒有,則從遠程倉庫(如 npmjs.com 或淘寶鏡像)下載一次,并將壓縮包存入 cache。
    • 如果已有緩存,則直接使用已有的 .tgz 文件。
  • 安裝階段

    • 從 cache 中的 .tgz 文件解壓并安裝到 prefixD:\node_global),生成可執(zhí)行的模塊和命令。
    • 同一個包的 .tgz 文件只會在 cache 中存儲一份,而安裝后的解壓文件會存放到 prefix。

具體例子說明

假設你全局安裝了 pm2

  • 緩存路徑 D:\node_cache
    • 存儲 pm2 的原始 .tgz 文件(如 pm2-5.3.0.tgz)和元數據。
  • 全局路徑 D:\node_global
    • 存儲解壓后的 pm2 模塊文件(如 node_modules/pm2)和可執(zhí)行文件(如 pm2.cmd)。

關鍵點

  • .tgz 文件只存在于 cache,而解壓后的文件存在于 prefix。
  • 如果再次安裝 pm2,npm 會直接從 cache 中讀取 .tgz,無需重新下載,但會再次解壓到 prefix(如果版本不同或需要更新)。

為什么需要分開這兩個路徑?

  • 職責分離
    • cache 是臨時存儲區(qū),用于加速安裝。
    • prefix 是最終安裝路徑,存放可直接使用的模塊和命令。
  • 靈活性
    • 可以將 cache 放在高速存儲(如 SSD),prefix 放在大容量存儲(如 HDD)。
    • 可以獨立清理 cache(節(jié)省空間),而不會影響已安裝的全局模塊。

總結

  • prefix:存放已安裝的全局模塊(長期保留)。
  • cache:存放下載的原始包文件(臨時緩存)。
  • 不會重復下載:同一個包的 .tgz 文件只會在 cache 中存儲一份,安裝時僅解壓到 prefix。

到此這篇關于如何修改npm的全局安裝路徑的文章就介紹到這了,更多相關npm全局安裝路徑修改內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Node.js 異步異常的處理與domain模塊解析

    Node.js 異步異常的處理與domain模塊解析

    本篇文章主要介紹了Node.js 異步異常的處理與domain模塊解析,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Node.js的項目構建工具Grunt的安裝與配置教程

    Node.js的項目構建工具Grunt的安裝與配置教程

    Grunt是為Node打造的項目構建工具,相當于C/C++世界中的makefile,可以執(zhí)行像壓縮、編譯、單元測試、代碼檢查以及打包發(fā)布的任務,下面我們就來一起看一下Node.js的項目構建工具Grunt的安裝與配置教程:
    2016-05-05
  • node工作線程worker_threads的基本使用

    node工作線程worker_threads的基本使用

    本文主要介紹了node工作線程worker_threads的基本使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • axios基本用法教程示例詳解

    axios基本用法教程示例詳解

    這篇文章主要為大家介紹了axios基本用法示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • npm?install安裝過程報錯的實用解決辦法

    npm?install安裝過程報錯的實用解決辦法

    最近做項目遇到npm install 的問題,下面這篇文章主要給大家介紹了關于npm?install安裝過程報錯的實用解決辦法,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-06-06
  • Node.js與MongoDB構建后端評論系統(tǒng)實戰(zhàn)指南

    Node.js與MongoDB構建后端評論系統(tǒng)實戰(zhàn)指南

    Node.js作為一門基于Chrome V8引擎的JavaScript運行環(huán)境,它的非阻塞I/O模型和事件驅動架構使得它在處理大量并發(fā)連接方面表現優(yōu)異,成為了構建網絡應用的流行選擇,本文講述Node.js與MongoDB構建后端評論系統(tǒng)實戰(zhàn),感興趣的朋友一起看看吧
    2025-04-04
  • 簡單模擬node.js中require的加載機制

    簡單模擬node.js中require的加載機制

    大家都知道Node 采用的模塊化結構是按照 CommonJS 規(guī)范,模塊與文件是一一對應關系,即加載一個模塊,實際上就是加載對應的一個模塊文件。這篇文章顯示簡單的介紹了nodejs中require的加載機制,而后簡單的模擬require函數,有需要的朋友們下面來一起看看吧。
    2016-10-10
  • Node.js包管理器代理工具Verdaccio輕松創(chuàng)建管理本地npm包倉庫

    Node.js包管理器代理工具Verdaccio輕松創(chuàng)建管理本地npm包倉庫

    這篇文章主要為大家介紹了Node.js包管理器代理工具Verdaccio輕松創(chuàng)建管理本地npm包倉庫的使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • 一文秒懂nodejs中的異步編程

    一文秒懂nodejs中的異步編程

    這篇文章主要介紹了深入理解nodejs中的異步編程,本文給大家介紹的非常想詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • npm?工具庫?yenv使用簡介

    npm?工具庫?yenv使用簡介

    這篇文章主要為大家介紹了npm?工具庫?yenv使用簡介,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05

最新評論

南通市| 大城县| 磐石市| 常州市| 高淳县| 建瓯市| 阿勒泰市| 隆林| 惠东县| 辽源市| 鹤山市| 台北市| 金乡县| 康平县| 淅川县| 定结县| 芮城县| 宁陵县| 青海省| 吴旗县| 朝阳市| 黄平县| 八宿县| 永济市| 读书| 新建县| 荥阳市| 万源市| 元江| 洮南市| 措勤县| 且末县| 乌海市| 鄂托克前旗| 安国市| 高淳县| 福海县| 易门县| 比如县| 二连浩特市| 辽源市|