nvm的使用

在日常的工作的开发中,我们可能有多个项目需要维护,但是有的项目的是几年前已经开发好的,有的则是最近新开的。开发中我就发现有些老项目用比较高版本的node取下包时会报错,那我就想每次维护老项目的时候还要去重新下载一个能兼容的,版本较低的node么,所以我们非常需要一个node的版本管理工具,那就是nvm。

nvm 安装指南

nvm 在 window 安装会存在一些问题, 从安装步骤,到问题解决,一次性梳理清楚

1. 先卸载node环境(若有),进入控制面板找到 nodejs 卸载
2. github下载 nvm-window下载 下载 nvm-setup.exe 版本
3. 设置 nvm 的root路径 - window 不要放在有要求有管理员权限读写的盘符

在这里插入图片描述

4、测试
`cd d:\nvm nvm -v`

在这里插入图片描述
存在输入内容, 即安装完成

5、nvm 默认的node 镜像和 npm 镜像如下

找到d:/nvm/settings.txt 文件

`node_mirror: https://nodejs.org/dist/ npm_mirror: https://github.com/npm/cli/archive/`

因为网络问题,nvm 安装Node 可能会超时,所以需要修改 下载源
手动修改 nvm 安装目录下的 setting.txt 文件
d:/nvm/settings.txt 文件

`root: C:\Users\WS\AppData\Roaming\npm path: C:\Users\WS\AppData\Roaming\npm node_mirror:npm.taobao.org/mirrors/node/ npm_mirror:npm.taobao.org/mirrors/npm/`
6、测试下
# 例如 安装14的最新版本
nvm  install 14
# 查看本机的 node 清单
nvm list
# 使用指定版本 nvm use 需要指定完整的版本号
nvm use 14.19.3

在这里插入图片描述

问题排查

1、找不到node包

问题: Could not retrieve https://nodejs.org/dist/latest-v14.x.x/SHASUMS256.txt
解决办法: 网络问题, 切换 node 源可解决

2、安装node 版本报 无法读写
nvm install 16
Downloading node.js version 16.15.0 (64-bit)...
Error while creating C:\software\nvm\v16.15.0\node.zip - open C:\software\nvm\v16.15.0\node.zip: The system cannot find the path specified.
Could not download node.js v16.15.0 64-bit executable.

原因: 没有权限
解决办法: window 命令行采用管理员权限安装
在这里插入图片描述

3、执行 node -v 提示命令找不到

检查 setting.txt 中的 root 和 path 是否指向 如下路径 AppData\Roaming\npm

root: C:\Users\WS\AppData\Roaming\npm
path: C:\Users\WS\AppData\Roaming\npm
4、window下执行 nvm use 14.19.3 切换node 版本 乱码

在这里插入图片描述
这种乱码 内容其实是下面的 , 提示没有权限, 采用管理员权限运行即可, window每次切换node版本,都需要 管理员权限运行

`You do not have sufficient privilege to perform this operation.`
5、 nvm 安装后, node -v, npm -v 都可以,nested aliases not supported**

node -v, npm -v 都正常, 但是在项目里 npm i 就 不能安装依赖
删除 package-lock.json 文件即可, 存在冲突问题

6、卸载 node后,本机还没删除干净,导致 nvm 安装不上

检查如下目录, 手动删除

C:\Users\WS\AppData\Roaming
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值