强力解决使用node版本管理工具 NVM 出现的问题(找不到 node,或者找不到 npm)

强力解决使用node版本管理工具 NVM 出现的问题(找不到 node,或者找不到 npm)

node与npm版本对应关系

nvm是好用的Nodejs版本管理工具,

通过它可以方便地在本地调换Node版本。

2020-05-28 Node当前长期稳定版12.17.0

很久没有nvm了,于是打开 cmd,

nvm install 12.17.0

然后 C:/nvm/v12.17.0 就安装好了,

通过 nvm use 12.17.0 切换到该最新版本。

通过node -v 可确认当前node版。

问题出现

npm -v却报错找不到npm-cli。

显然,安装是不成功的。

这是因为npm没有安装成功,

查看C:/nvm/v12.17.0/node_modules下可发现,

是空的,没有npm。

而没有安装npm的原因,很有可能就是网络的原因,访问不了。

尝试解决

bd找到的解决办法是:

复制代码
给nvm的配置里指定下载地址,即taobao镜像地址

编辑C:/nvm/setting.txt文件如下:

root: C:\nvm

path: C:\Program Files\nodejs

arch: 64

node_mirror: https://npm.taobao.org/mirrors/node/

npm_mirror: https://npm.taobao.org/mirrors/npm/

清除旧版本:

nvm uninstall 12.17.0

然后手动删除C:/nvm/v12.17.0/文件夹。

不然再次nvm install 12.17.0会提示已经安装。

充满信心地重新开始

nvm isntall 12.17.0

查看:

node -v

"病情"加重

MD,连node也不认了(环境变量一切都在)---_---

这时,内心不要慌,看下C:\Program Files\nodejs还在不在,

结果是,它不在了。。。诡异吧

铁腕镇压

不信邪的我,决定手动解决这个问题。

这个nodejs文件夹,是一个link,win10下使用命令行:

mklink /D nodejs "c:\nvm\v12.17.0"

这样就生成了nodejs的链接,把它放到C:\Program Files\下。

然后,node -v还是不认,原因是安装的这版node文件名是node64.exe,

这个好说,直接重命名,把 64 去掉,就正常了。

胜利在望

这时,npm的问题仍在。下一步就是解决 npm 的问题。

在执行nvm install 12.17.0的时候,会在nvm文件夹下创建一个temp文件夹,

npm的安装包就会下载在这里,但是注意:

复制代码
下载的安装包为C:\nvm\temp\npm-v6.14.4.zip
安装完后会被删除,文件夹会清空
卡好时间,在下载完,安装中的时点,把安装包copy出来
提示安装完成后,会发现C:\nvm\v12.17.0\node_modules下空空如也
将npm-v6.14.4.zip下的cli-6.14.4解压到C:\nvm\v12.17.0\node_modules下,重命名为npm

至此,npm -v已经OK了。

或许,碰到这样的问题,通过重新安装nvm可以解决,但当你装过多个node版本,并且里面分别安装了很多package的时候,代价有点大或者说还是太麻烦

相关推荐
Doris_20235 分钟前
Python 模式匹配match case
前端·后端·python
森林的尽头是阳光18 分钟前
vue防抖节流,全局定义,使用
前端·javascript·vue.js
前端双越老师19 分钟前
2025 年还有前端不会 Nodejs ?
node.js·agent·全栈
YiHanXii20 分钟前
React.memo 小练习题 + 参考答案
前端·javascript·react.js
zero13_小葵司27 分钟前
Vue 3 前端工程化规范
前端·javascript·vue.js
Yolanda_202227 分钟前
vue-sync修饰符解析以及切换iframe页面进行保存提示功能的思路
前端·javascript·vue.js
伍哥的传说30 分钟前
Vite Plugin PWA – 零配置构建现代渐进式Web应用
开发语言·前端·javascript·web app·pwa·service worker·workbox
小桥风满袖1 小时前
极简三分钟ES6 - ES8中字符串扩展
前端·javascript
张拭心1 小时前
这就是流量的力量吗?用豆包 AI 编程做的xhs小组件帖子爆了
前端·ai编程·豆包marscode