下载与快速上手 NVM:Node.js 版本管理工具

发布于:2025-03-25 ⋅ 阅读:(21) ⋅ 点赞:(0)
一、准备工作:卸载旧版 Node.js

重要提示:在安装 NVM 前,请先彻底删除已安装的 Node.js,避免路径冲突:

  1. 检查安装路径

    bash

    where node
    
     

    常见路径:

    • C:\Program Files\nodejs\
    • C:\Users\用户名\AppData\Local\nodejs\
  2. 卸载步骤

    • 通过控制面板卸载 Node.js 程序
    • 删除上述路径下的所有文件
    • 清理环境变量:
      • 右键此电脑 → 属性 → 高级系统设置 → 环境变量
      • 删除所有包含nodejs的系统变量和用户变量

为什么需要这样做?
NVM 通过自定义路径管理 Node 版本,若旧版 Node 存在:

  • 可能导致where node返回错误路径
  • 环境变量优先级冲突
  • 版本管理混乱
二、NVM 安装与验证详解

1. 下载 NVM

bash

访问官方GitHub仓库:
https://github.com/coreybutler/nvm-windows/releases

选择带有nvm-setup的最新.msi 文件(如nvm-setup_1.1.17.msi

2. 安装过程

  • 运行安装程序时:
    • 建议保持默认安装路径C:\Program Files\nvm\
    • 确保勾选 "Add to environment variables"
    • 安装完成后需重启终端生效

3. 验证安装

bash

where node

✅ 正常输出:

plaintext

C:\Program Files\nvm\v20.18.0\node.exe

❌ 异常情况处理:

  • 若未找到路径:重新检查环境变量
  • 若显示旧版路径:彻底删除旧版 Node.js

原理
Windows 的where命令会搜索系统 PATH 环境变量中的所有目录。NVM 安装时会将自身路径添加到 PATH 最前端,因此正常情况下应优先找到 NVM 管理的 Node.js 可执行文件。

4. 检查 NVM 版本

bash

nvm version

输出示例:

plaintext

1.1.17
三、版本管理深度解析

1. 查看可用版本

bash

nvm list-remote

输出说明:

plaintext

   14.21.3 LTS (LTS: Erbium)
   18.18.2 LTS (LTS: Hydrogen)
-> 20.18.0 Current (Latest LTS: Iron)

  • 箭头标记表示当前最新 LTS 版本
  • LTS 版适合生产环境(长期支持)
  • Current 版包含最新特性(可能不稳定)

2. 安装指定版本

bash

nvm install 20.18.0

🔍 执行过程:

  1. 检查本地缓存是否存在该版本
  2. 从 Node.js 官网下载对应版本
  3. 解压到C:\Program Files\nvm\v20.18.0目录

3. 切换使用版本

bash

nvm use 20.18.0

🔄 切换原理:

  • 修改nvm目录下的settings.txt
  • 建立current软链接指向目标版本
  • 自动更新系统临时环境变量
四、最终验证与维护

1. 检查 Node.js/npm 版本

bash

node -v
npm -v

✅ 预期输出:

plaintext

v20.18.0
10.2.0

2. 管理已安装版本

bash

nvm list

输出示例:

plaintext

   18.18.2
* 20.18.0 (Currently using 64-bit executable)

3. 常用维护命令

bash

nvm uninstall 18.18.0  # 删除指定版本
nvm arch 64            # 切换64/32位版本
nvm proxy              # 设置下载代理
五、常见问题解决方案

1. 网络下载失败

  • 错误提示:Request failed with status code 443
  • 解决方案:

    bash

    nvm proxy http://your-proxy:port
    

2. 权限问题

  • 错误提示:Access is denied
  • 解决方法:以管理员身份运行终端

3. 环境变量未生效

  • 处理方式:重启终端或执行:

    bash

    refreshenv
    

4. 多版本共存

  • 通过nvm use切换版本
  • 项目级管理建议使用.nvmrc文件:

    bash

    echo "20.18.0" > .nvmrc
    nvm use
    
验证逻辑总结

graph TD
    A[执行where node] --> B{输出NVM路径?}
    B -->|是| C[验证成功]
    B -->|否| D[检查旧版Node.js残留]
    E[执行nvm version] --> F{显示版本号?}
    F -->|是| G[版本验证通过]
    F -->|否| H[修复环境变量]
    I[执行node -v] --> J{版本正确?}
    J -->|是| K[完整验证通过]
    J -->|否| L[重新执行nvm use]

截至2025年3月21日本方法仍然可用