windows用nvm管理nodejs

问题: 项目需要的版本号: node v14.17.2 npm -v 6.14.13 本机带的node版本号: node v16.14.2 npm 8.5.0 有什么办法能把这两个都管理起来,用到哪个切换到哪个么?
解决方案,安装nvm管理

一. 卸载原有nodejs

  1. 清空缓存: npm cache clean --force

    验证是否清空: npm cache verify

typescript 复制代码
C:\WINDOWS\system32>npm cache verify
Cache verified and compressed (D:\soft\nodejs\node_cache\_cacache)
Content verified: 0 (0 bytes)
Index entries: 0
Finished in 0.031s

执行后如果输出类似 Cache verified and compressed (0 bytes) 或 Cache is clean 之类的内容,就说明缓存已经完全清空了。

  1. 控制面板删除nodejs
  2. 系统设置删除关于nodejs的配置
  3. 删除全局 node_global node_cache文件夹

二. 安装nvm

  1. 安装包地址

https://github.com/coreybutler/nvm-windows/releases

各种下一步,将nvm和nodejs的安装路径记录下来,后续有用

检查: nvm list available

typescript 复制代码
C:\WINDOWS\system32>nvm list available
|   CURRENT    |     LTS      |  OLD STABLE  | OLD UNSTABLE |
|--------------|--------------|--------------|--------------|
|    25.4.0    |   24.13.0    |   0.12.18    |   0.11.16    |
|    25.3.0    |   24.12.0    |   0.12.17    |   0.11.15    |
......
|    24.0.0    |   22.11.0    |   0.10.48    |    0.9.10    |
This is a partial list. For a complete list, visit https://nodejs.org/en/download/releases

说明安装成功

注意:这里 nvm list available 输出的所有版本号,全部都是 Node.js 的版本号,不是 nvm-windows 本身的版本,也不是 npm 的版本。

三. 安装自己需要的nodejs版本

例如我这里要下载 node v14.17.2

这里两个方案,全部看完后,请自行选择

方案一: 直接用超管打开cmd 输入

nvm install 14.17.2

这里我用不了

原因一:

一直在下载,下载不下来nodejs

解决方案: 打开nvm安装目录,找到settings.txt,将下列两个镜像追加到文件中

typescript 复制代码
node_mirror: https://npmmirror.com/mirrors/node/
npm_mirror: https://npmmirror.com/mirrors/npm/

解决了下载问题

但还有原因二:

typescript 复制代码
C:\WINDOWS\system32>nvm install 14.17.2
Downloading node.js version 14.17.2 (64-bit)...
Complete
Downloading npm...
Creating C:\WINDOWS\TEMP\nvm-install-2229972276\temp
.
Downloading npm version 6.14.13... Complete
Installing npm v6.14.13...
error installing 14.17.2: open C:\WINDOWS\TEMP\nvm-npm-2518182551\npm-v6.14.13.zip: The system cannot find the file specified.

核心原因还是 系统临时目录(C:\WINDOWS\TEMP)的权限 / 访问问题

所以这里我选方案二

方案二: 直接手动下载nodejs.zip文件,放到nvm安装文件夹中
  1. 下载对应包:

地址: https://npmmirror.com/mirrors/node/v14.17.2/node-v14.17.2-win-x64.zip

  1. 将zip包解压到 nvm 目录

在nvm 安装目录下新建文件夹,命名为nodejs版本号,例如我的叫 v14.17.2(必须严格这个名字,和版本号对应)

  1. 文件对应

把下载的 node-v14.17.2-win-x64.zip 解压到 nvm 安装目录下的 v14.17.2文件夹里(解压后,v14.17.2 文件夹里能看到 node.exe、npm.cmd 等文件)。

验证: 以管理员身份打开 cmd,执行 nvm list

typescript 复制代码
C:\WINDOWS\system32>nvm list

    14.17.2

我这里说明已经将nodejs归在nvm控制下,需要更多的版本就用此方法一个个添加

为什么这个方法能解决?

手动安装跳过了 nvm 「下载 npm → 存到系统临时目录 → 解压」的环节,直接把完整的 Node.js(自带 npm)放到 nvm 管理目录里,nvm 只需要做「版本切换」的核心工作,完全避开了临时目录的权限问题。

四. 版本切换

我这里需要切换到 14.17.2 版本: nvm use 14.17.2

typescript 复制代码
C:\WINDOWS\system32>nvm use 14.17.2
Now using node v14.17.2 (64-bit)

验证是否成功 node -v

typescript 复制代码
C:\WINDOWS\system32>node -v
v14.17.2

C:\WINDOWS\system32>npm -v
6.14.13
相关推荐
codingWhat1 天前
整理「祖传」代码,就是在开发脚手架?
前端·javascript·node.js
ServBay1 天前
Node.js、Bun 与 Deno,2026 年后端运行时选择指南
node.js·deno·bun
码路飞1 天前
Node.js 中间层我维护了两年,这周终于摊牌了——成本账单算完我人傻了
node.js
None3212 天前
【NestJs】使用Winston+ELK分布式链路追踪日志采集
javascript·node.js
Dilettante2582 天前
这一招让 Node 后端服务启动速度提升 75%!
typescript·node.js
Mr_li3 天前
NestJS 集成 TypeORM 的最优解
node.js·nestjs
UIUV3 天前
node:child_process spawn 模块学习笔记
javascript·后端·node.js
前端付豪4 天前
Nest 项目小实践之注册登陆
前端·node.js·nestjs
天蓝色的鱼鱼4 天前
Node.js 中间层退潮:从“前端救星”到“成本噩梦”
前端·架构·node.js
codingWhat4 天前
uniapp 多地区、多平台、多环境打包方案
前端·架构·node.js