Windows下安装nvm管理多个版本的node.js

有时候工作需要,会遇到既要保留低版本的node 14 又需要高版本的情况,这时候就必须用一下nvm来管理了!


1.安装nvm

  1. 从github下载nvm,选择nvm-setup.zip,点击下载地址

    尽量用exe版本的,免去自己配置环境变量了!
    如果github 临时打不开,也可以直接搜镜像站使用这个地址下载试试

  1. 安装过程就不说了,下一步就好了,可以自己指定安装路径,比如我放在了 D:\software下。
    这里注意下,如果在安装nvm之前,你电脑上已经有了node版本,安装过程中会反复提示,是否加入到nvm 控制里,点确认即可。但是如果装完nvm后,之前的node版本没有被 nvm 识别,可以用以下方式解决:

方法 1:手动导入现有 Node.js 14.7.3 到 nvm

  1. 找到你原来的 Node.js 14.7.3 安装路径

    • 通常可能在:
      • C:\Program Files\nodejs(默认安装位置)
      • C:\Users\<你的用户名>\AppData\Local\nodejs
      • 或者你自己指定的目录
  2. 复制 Node.js 14.7.3 到 nvm 目录

    • 将原 Node.js 14.7.3 的整个文件夹(包括 node_modulesnode.exenpm.cmd 等)复制到:

      复制代码
      D:\software\nvm\v14.7.3
    • 确保目录结构类似:

      复制代码
      D:\software\nvm\v14.7.3\
        ├── node.exe
        ├── npm.cmd
        ├── npx.cmd
        └── node_modules\
            └── npm\
                └── ...
  3. 让 nvm 识别该版本

    • 运行:

      cmd 复制代码
      nvm list
    • 如果仍然看不到 14.7.3,可以尝试:

      cmd 复制代码
      nvm on
      nvm list

方法 2:直接通过 nvm 重新安装 14.7.3

如果不想手动迁移,可以直接用 nvm 安装:

cmd 复制代码
nvm install 14.7.3
nvm use 14.7.3

这样 nvm 会自动下载并管理该版本。


方法 3:检查环境变量

  1. 确保 nvm 的路径在 PATH 环境变量中

    • 打开 系统环境变量Win + Rsysdm.cpl高级环境变量

    • 检查 PATH 是否包含:

      复制代码
      D:\software\nvm
    • 确保它 高于 原来的 Node.js 路径(如 C:\Program Files\nodejs),否则系统仍会优先使用旧版本。

  2. 删除旧 Node.js 的残留路径

    • 如果不再需要旧版本,可以:
      • 卸载原来的 Node.js(通过 控制面板 → 卸载程序
      • 删除 C:\Program Files\nodejs 目录(如果存在)

验证是否切换成功

  1. 检查当前使用的 Node.js 版本:

    cmd 复制代码
    node -v

    应该显示 v14.7.3

  2. 检查 Node.js 路径:

    cmd 复制代码
    where node

    应该返回:

    复制代码
    D:\software\nvm\v14.7.3\node.exe

    而不是原来的路径。


2.配置 NVM

直接通过 nvm 下载 node 可能需要消耗比较长的时间,可以设置 nvm 的淘宝镜像。

找到安装 nvm 文件目录下的 settings.txt 文件,在里面加上如下配置:

bash 复制代码
node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

3.NVM 常用命令:

命令 说明
nvm install 安装指定版本的 Node.js。
nvm use 切换到指定版本的 Node.js。
nvm ls 列出已安装的所有 Node.js 版本。
nvm alias 给指定版本创建别名
nvm current 显示当前正在使用的 Node.js 版本。
nvm uninstall 卸载指定版本的 Node.js。
nvm run 在指定版本下运行脚本

这样基本也就够用了!