强力解决使用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的时候,代价有点大或者说还是太麻烦

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/166651.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习模板代码(期末考试复习)自用存档

机器学习复习代码 利用sklearn实现knn import numpy as np import pandas as pd from sklearn.neighbors import KNeighborsClassifier from sklearn.model_selection import GridSearchCVdef model_selection(x_train, y_train):## 第一个是网格搜索## p是选择查找方式:1是欧…

YOLO目标检测——海洋目标检测数据集下载分享【含对应voc、coco和yolo三种格式标签】

实际项目应用:海洋监管、海洋资源开发、海洋科学研究数据集说明:海洋目标检测数据集,真实场景的高质量图片数据,数据场景丰富,含有“金属”、“未知”、“橡胶”、“平台”、“塑料”、“木材”、“布”、“纸张”、“…

《QT从基础到进阶·十六》QT实现客户端和服务端的简单交互

QT版本:5.15.2 VS版本:2019 客户端程序主要包含三块:连接服务器,发送消息,关闭客户端 服务端程序主要包含三块:打开消息监听,接收消息并反馈,关闭服务端 1、先打开服务端监听功能 …

GIS入门,xyz地图瓦片是什么,xyz数据格式详解,如何发布离线XYZ瓦片到nginx或者tomcat中

XYZ介绍 XYZ瓦片是一种在线地图数据格式,由goole公司开发。 与其他瓦片地图类似,XYZ瓦片将地图数据分解为一系列小的图像块,以提高地图显示效率和性能。 XYZ瓦片提供了一种开放的地图平台,使开发者可以轻松地将地图集成到自己的应用程序中。同时,它还提供了高分辨率图像和…

如何在时间循环里最优决策——时间旅行者的最优决策

文章目录 每日一句正能量前言时间旅行和平行宇宙强化学习策略梯度算法代码案例推荐阅读赠书活动 每日一句正能量 做一个决定,并不难,难的是付诸行动,并且坚持到底。 前言 时间循环是一类热门的影视题材,其设定常常如下&#xff1…

Spring Data JPA 项目配置与QueryDSL集成

一、说明 Spring Data JPA通过Spring Initializer创建时勾选相关依赖即可引入,QueryDSL需要单独引入。Spring JPA针对QueryDSL有比较好的兼容性,可以实现优雅的SQL构建。 二、设置JPA默认配置(yaml格式) spring:jpa:hibernate:…

2023.11.8 hadoop学习-概述,hdfs dfs的shell命令

目录 1.分布式和集群 2.Hadoop框架 3.版本更新 4.hadoop架构详解 5.页面访问端口 6.Hadoop-HDFS HDFS架构 HDFS副本 7.SHELL命令 8.启动hive服务 1.分布式和集群 分布式: 多台服务器协同配合完成同一个大任务(每个服务器都只完成大任务拆分出来的单独1个子任务)集 群:…

HTTP-HTTPS区别详解

一、HTTP协议 1. GET和POST的请求的区别 Post 和 Get 是 HTTP 请求的两种方法,其区别如下: 应用场景: GET 请求是一个幂等的请求,一般 Get 请求用于对服务器资源不会产生影响的场景,比如说请求一个网页的资源。而 Po…

[模版总结] - 树的基本算法1 - 遍历

树结构定义 一种非线性存储结构,具有存储“一对多”关系的数据元素集合 种类 General Tree TrieB/B 树二叉树 满/完满/完全二叉树 完美BT : 除了叶子结点外所有节点都有两个字节点,每一层都完满填充完全BT: 除最后一层以外其他每一层都完美…

VUE获取当前日期的周日和周六

<template><div><div click"handleLast()">上一周</div><div click"handleNext()">下一周</div><el-calendarref"monChild"v-model"value":first-day-of-week"7":range"[sta…

二十、W5100S/W5500+RP2040树莓派Pico<MQTT连接阿里云控制板载LED>

文章目录 1. 前言2. 简介2.1 初步了解阿里云物联网平台创建产品步骤2.2 阿里云物模型讲解 3 WIZnet以太网芯片4 示例概述4.1 流程图4.2 准备工作核心4.3 连接方式4.4 主要代码概述4.5 结果演示 5 注意事项6 相关链接 1. 前言 物联网平台提供安全可靠的设备连接通信能力&#xf…

【uniapp】签名组件,兼容vue2vue3

网上找了个源码改吧改吧&#xff0c;清除了没用的功能和兼容性&#xff0c;基于uniapp开发的 样子 vue2 使用方法&#xff0c;具体的可以根据业务自行修改 <signature ref"signature" width"100%" height"410rpx"></signature>confi…