下载与快速上手 NVM:Node.js 版本管理工具
一、准备工作:卸载旧版 Node.js
重要提示:在安装 NVM 前,请先彻底删除已安装的 Node.js,避免路径冲突:
-
检查安装路径
bash
where node常见路径:
C:\Program Files\nodejs\C:\Users\用户名\AppData\Local\nodejs\
-
卸载步骤:
- 通过控制面板卸载 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
🔍 执行过程:
- 检查本地缓存是否存在该版本
- 从 Node.js 官网下载对应版本
- 解压到
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 TDA[执行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日本方法仍然可用
相关文章:
下载与快速上手 NVM:Node.js 版本管理工具
一、准备工作:卸载旧版 Node.js 重要提示:在安装 NVM 前,请先彻底删除已安装的 Node.js,避免路径冲突: 检查安装路径 bash where node常见路径: C:\Program Files\nodejs\C:\Users\用户名\AppData\Local\n…...
网络防火墙(Firewall)、Web防火墙(WAF)、入侵检测系统(IDS)、入侵防御系统(IPS)对比总结
目录 一、Firewall、WAF、IDS、IPS四种设备简介 二、Firewall、WAF、IDS、IPS四种设备的角色定位 三、防火墙(Firewall)与入侵检测系统(IPS)的区别 四、入侵检测系统(IDS)与入侵防御系统(IP…...
Unity | 游戏数据配置
目录 一、ScriptableObject 1.创建ScriptableObject 2.创建asset资源 3.asset资源的读取与保存 二、Excel转JSON 1.Excel格式 2.导表工具 (1)处理A格式Excel (2)处理B格式Excel 三、解析Json文件 1.读取test.json文件 四、相关插件 在游戏开发中,策划…...
IT工具 | node.js 进程管理工具 PM2 大升级!支持 Bun.js
P(rocess)M(anager)2 是一个 node.js 下的进程管理器,内置负载均衡,支持应用自动重启,常用于生产环境运行 node.js 应用,非常好用👍 🌼概述 2025-03-15日,PM2发布最新版本v6.0.5,这…...
VulnHub-Web-Machine-N7通关攻略
一、信息收集 第一步:确定靶机IP为192.168.0.107 第二步:扫描后台及开放端口 第三步:进行敏感目录及文件扫描 http://192.168.0.107/index.html (CODE:200|SIZE:1620) http://192.168.0.107/server-status (CODE:403|SIZ…...
发现一个好用的Vue.js内置组件
目录 一、这个好用的内置组件是什么? 二、这个组件的主要功能 三、怎么使用? 四、使用注意事项 五、我的使用场景 一、这个好用的内置组件是什么? 今天在优化我的平台应用时,发现一个好用的组件标签--<keep-alive>。 …...
论华为 Pura X 折叠屏性能检测
在科技浪潮中,折叠屏手机以其创新形态掀起市场热潮。华为 Pura X 作为华为最新折叠手机,承载前沿科技与精湛工艺,成为行业焦点。它融合先进折叠屏技术与优质材质,致力于打破传统手机使用边界,为用户开启全新体验。但产…...
生成PDF文件:从html2canvas和jsPdf渲染到Puppeteer矢量图
刚刚实现而已:第一次明白,双击或file:///打开html文件,居然和从localhost:3000打开同一个html文件有本质的区别。 字体居然还能以Base64代码嵌入到网页,只是太大太笨。 需要安装node.js,npm安装更多依赖:…...
在 Elasticsearch 中探索基于 NVIDIA 的 GPU 加速向量搜索
作者:来自 Elastic Chris Hegarty 及 Hemant Malik 由 NVIDIA cuVS 提供支持,此次合作旨在为开发者在 Elasticsearch 中的向量搜索提供 GPU 加速。 在 Elastic Engineering 组织内,我们一直致力于优化向量数据库的性能。我们的使命是让 Lucen…...
Junit在测试过程中的使用方式,具体使用在项目测试中的重点说明
JUnit 是一个广泛使用的 Java 单元测试框架,主要用于编写和运行可重复的测试。以下是 JUnit 在项目测试中的使用方式和重点说明: 1. 基本使用 场景:测试一个简单的 Java 类。 示例: import org.junit.Test; import static org.junit.Assert.*;public class CalculatorTe…...
关于CNN,RNN,GAN,GNN,DQN,Transformer,LSTM,DBN你了解多少
以下是神经网络中常见的几种模型的简要介绍: 1. CNN (Convolutional Neural Network, 卷积神经网络) 用途: 主要用于图像处理和计算机视觉任务。特点: 通过卷积核提取局部特征,具有平移不变性,能够有效处理高维数据(如图像…...
asp.net 4.5在医院自助系统中使用DeepSeek帮助医生分析患者报告
环境: asp.net 4.5Visual Studio 2015本地已经部署deepseek-r1:1.5b 涉及技术 ASP.NET MVC框架用于构建Web应用程序。使用HttpWebRequest和HttpWebResponse进行HTTP请求和响应处理。JSON序列化和反序列化用于构造和解析数据。SSE(服务器发送事件…...
HeyGem.ai 全离线数字人生成引擎加入 GitCode:开启本地化 AIGC 创作新时代
在人工智能技术飞速演进的时代,数据隐私与创作自由正成为全球开发者关注的焦点。硅基智能旗下开源项目 HeyGem.ai 近日正式加入 GitCode,以全球首个全离线数字人生成引擎的颠覆性技术,重新定义人工智能生成内容(AIGC)的…...
密码协议与网络安全——引言
三个基本概念 计算机安全(Computer Security):对于一个自动化的信息系统,采取保护措施确保信息系统资源(包括硬件、软件、固件、信息、数据和通信)的保密性、完整性和可用性。 网络安全(Netwo…...
springboot实现调用百度ocr实现身份识别+二要素校验
一、技术选型 OCR服务:推荐使用百度AI 二、实现 1.注册一个服务 百度智能云控制台https://console.bce.baidu.com/ai-engine/ocr/overview/index?_1742309417611 填写完之后可以获取到app-id、apiKey、SecretKey这三个后面文件配置会用到 2、导入依赖 <!-- …...
MATLAB 控制系统设计与仿真 - 28
MATLAB状态空间控制系统分析 - 极点配置 就受控系统的控制律的设计而言,由状态反馈极点配置和输出反馈极点配置。 状态反馈极点配置问题就是:通过状态反馈矩阵K的选取,使闭环系统的极点,即(A-BK)的特征值恰好处于所希望的一组给定闭环极点的位置。 另外,线性定常系统可…...
JetsonNano —— 4、Windows下对JetsonNano板卡烧录刷机Ubuntu20.04版本(官方教程)
介绍 NVIDIA Jetson Nano™ 开发者套件是一款面向创客、学习者和开发人员的小型 AI 计算机。按照这个简短的指南,你就可以开始构建实用的 AI 应用程序、酷炫的 AI 机器人等了。 烧录刷机 1、下载 Jetson Nano开发者套件SD卡映像 解压出.img文件并记下它在计算机上的…...
加速还是安全?CDN与群联云防护的本质差异与适用场景
一、核心功能定位对比 维度传统CDN群联云防护核心目标内容加速(降低延迟、提升访问速度)安全防护(抵御DDoS/CC攻击、隐藏源站)技术重心缓存优化、边缘节点分发流量清洗、AI行为分析、加密隧道主要能力静态资源缓存、负载均衡攻击…...
简单理解机器学习中top_k、top_p、temperature三个参数的作用
在机器学习中,top_k、top_p 和 temperature 是用于控制生成模型(如语言模型)输出质量的参数,尤其在文本生成任务中常见。然而,网上文章很多很全,但大多晦涩难懂,今天我们来用最简单的语言谈谈它…...
Java面试黄金宝典6
1. 什么是 CAS 原理: CAS (Compare-And-Swap)是一种硬件级别的原子操作指令,在 Java 并发编程中常被用于实现无锁算法。其核心逻辑是:在进行数据更新时,会先将内存位置 V 的值与预期原值 A 进行比较&#x…...
【深度学习新浪潮】AI ISP技术与手机厂商演进历史
本文是关于AI ISP(人工智能图像信号处理器)的技术解析、与传统ISP(图像信号处理器)的区别、近三年研究进展,以及各大手机厂商在该领域演进历史的详细报告。本报告综合多个权威来源的信息,力求全面、深入地呈现相关技术发展脉络与行业动态。 第一部分:AI ISP的定义及与传…...
C语言基础08
内容提要 数组 排序算法:冒泡排序 二维数组 字符数组 数组 冒泡排序 排序思想(向前冒泡) 一次只排好一个数,针对n个数,最差情况需要n-1次就可以排好 每次排序假定第一个元素是最大或者最小,用第一个…...
基于Arm GNU Toolchain编译生成的.elf转hex/bin文件格式方法
基于Arm GNU Toolchain编译生成的.elf转hex/bin文件格式方法 已经弃用的版本(Version 10.3-2021.10):gcc-arm-none-eabi:https://developer.arm.com/downloads/-/gnu-rmArm GNU Toolchain当前版本:https://developer.a…...
1.angular介绍
初級使用视频添加链接描述 angular工具 angular.module(‘名’, [依赖模块]) 模块 angular.bind(*) : 修改this指向 angualr.copy() // a angular.copy(a, b) —a完全覆盖了b,c就是a angular.extend(a, b) a里面集成了b属性 angular.isArray angular.isDate angular.isDefin…...
java项目40分钟后token失效问题排查(40分钟后刷新页面白屏)
项目40分钟后token失效问题排查(40分钟后刷新页面白屏) 经过我 对比失效前token 可以正常访问接口,失效后的token 不能访问系统, 得出结论,我系统对接第三方 sso 系统,token 失效时间 在他们那边配置&…...
音频进阶学习二十——DFT离散傅里叶变换
文章目录 前言一、FT、FS、DTFT、DFS1.FT和FS2.DTFT和DFS 二、DFT定义1.对于DFT的理解1)DTFT和DFT2)DFS和DFT3)有限长序列和周期序列 2.圆周卷积1)线性卷积2)圆周卷积 三、频率采样和插值恢复1.频率采样的影响2.频率采…...
【Rust】集合的使用——Rust语言基础16
文章目录 1. 前言2. Vector2.1. 构建一个 vector2.2. 获取 vector 中的元素2.3. 遍历 vector2.4. 使用枚举来储存多种类型 3. String3.1. 新建字符串3.2. 更新字符串3.3. 字符串的内部结构3.3.1. 字符串如何访问内部元素?3.3.2. 字节、标量值和字形簇 3.4. 字符串 s…...
centos 7 部署ftp 基于匿名用户
在 CentOS 7 上搭建基于匿名用户的 FTP 服务,可按以下步骤进行: 1. 安装 vsftpd 服务 vsftpd 是一款常用的 FTP 服务器软件,可使用以下命令进行安装: bash sudo yum install -y vsftpd2. 启动并设置开机自启 vsftpd 服务 bash …...
Apache SeaTunnel脚本升级及参数调优实战
最近作者针对实时数仓的Apache SeaTunnel同步链路,完成了双引擎架构升级与全链路参数深度调优,希望本文能够给大家有所启发,欢迎批评指正! Apache SeaTunnel 版本 :2.3.9 Doris版本:2.0.6 MySQL JDBC Conne…...
算法 | 优化算法比较
===================================================== github:https://github.com/MichaelBeechan CSDN:https://blog.csdn.net/u011344545 ===================================================== 优化算法 一、主流优化算法分类1、传统梯度类算法2、启发式算…...
