当前位置: 首页 > news >正文

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 识别该版本

    • 运行:
      nvm list
      
    • 如果仍然看不到 14.7.3,可以尝试:
      nvm on
      nvm list
      

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

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

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 版本:

    node -v
    

    应该显示 v14.7.3

  2. 检查 Node.js 路径:

    where node
    

    应该返回:

    D:\software\nvm\v14.7.3\node.exe
    

    而不是原来的路径。


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

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

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 在指定版本下运行脚本

这样基本也就够用了!

http://www.xdnf.cn/news/1124623.html

相关文章:

  • LVS集群技术
  • 网络--OSPF实验
  • 分布式一致性协议
  • 卷积模型的优化--Dropout、批标准化与学习率衰减
  • 每天一个前端小知识 Day 31 - 前端国际化(i18n)与本地化(l10n)实战方案
  • 分支战略论:Git版本森林中的生存法则
  • PHP password_get_info() 函数
  • 时序预测 | Pytorch实现CNN-LSTM-KAN电力负荷时间序列预测模型
  • 深入理解MyBatis延迟加载:原理、配置与实战优化
  • 设备发出、接收数据帧的工作机制
  • B站自动回复工具(破解)
  • Linux连接跟踪Conntrack:原理、应用与内核实现
  • JAVA进阶--JVM
  • 【Linux网络】:HTTP(应用层协议)
  • rk3588平台USB 3.0 -OAK深度相机适配方法
  • 网络编程(TCP连接)
  • 前端同学,你能不能别再往后端传一个巨大的JSON了?
  • 7.14练习案例总结
  • UE5多人MOBA+GAS 22、创建技能图标UI,实现显示蓝耗,冷却,以及数字显示的倒数计时还有雷达显示的倒数计时
  • C语言:20250714笔记
  • OFDM系统中关于信号同步的STO估计与CFO估计的MATLAB仿真
  • 学习笔记——农作物遥感识别与大范围农作物类别制图的若干关键问题
  • 网络编程(套接字)
  • HTML应用指南:利用GET请求获取河南省胖东来超市门店位置信息
  • win10安装Elasticsearch
  • iOS高级开发工程师面试——RunTime
  • 深度解读virtio:Linux IO虚拟化核心机制
  • 一种用于医学图像分割的使用了多尺寸注意力Transformer的混合模型: HyTransMA
  • 记录自己在将python文件变成可访问库文件是碰到的问题
  • Linux的相关学习