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

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

2020-05-28 当前长期稳定版12.17.0,于是

nvm install 12.17.0

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

通过nvm use 12.17.0切换到最新版本的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的时候,代价有点大或者说还是太麻烦,所以,我上面解决方案还请考虑一下哦~~

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

  1. Node版本管理工具-NVM的安装与使用(windows系统)

    友情提示:为避免踩坑,建议浏览全文后动手操作!!! 一.nvm是什么 看到这篇文章的猿/媛们肯定不会问这个问题了,但是我还是要说,哈哈哈! 无论工作还是干嘛,就不会一直做项目,所以肯定也不会一直用一个 ...

  2. windows node版本管理工具nvm

    有时候,不同的项目需要使用不同的node版本.我们可以使用nvm管理不同的node版本.具体使用方法如下: 1.下载安装nvm 点击我下载nvm 解压下载的文件,双击nvm-setup.exe 直接下 ...

  3. node版本管理工具 -- nvm安装与使用

    新老项目维护时node环境切换麻烦怎么办? 不用担心,有了nvm ,一个命令就能切换node版本. 首先需要安装nvm工具,进入下载地址. 下载之后安装nvm. nvm安装之后还需要配置两个环境变量( ...

  4. node版本管理工具nvm安装使用教程

    一些安装包依赖一定的node版本,可以采用nvm管理node, 可以快速的进行版本切换. 操作系统: windows10, x64 常见版本工具: 1. nvmw, nvmm install node ...

  5. node版本管理工具nvm安装以及使用

    curl命令安装 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash 或者 使用wg ...

  6. nvm: node版本管理工具

    安装nvm   curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash node 版本切 ...

  7. nodejs版本管理工具NVM(Node Version Mene)

    最近打算用心学习nodejs,所以在学习中了解到NVM-nodejs的版本管理工具,下面我就记录下我学习并且安装的详细过程,请大神们放过~~第一步.你要先把你本机上安装的nodejs以及npm相关的东 ...

  8. 安装node版本管理工具之NVM

    nvm是个啥?nvm是一个可以让你在同一台机器上安装和切换不同版本node的工具. 你可能会问,为什么会有这个工具?有时候在开发的时候,对node版本有强制要求,有的要求用最新版本,有的要求用稳定版本 ...

  9. Node版本管理器NVM常用命令

    NVM是什么?nvm (Node Version Manager) 是Nodejs版本管理器,可对不同的node版本快速进行切换. 为什么要用NVM?基于node的工具和项目越来越多,但是每个项目使用 ...

随机推荐

  1. 程序员最喜欢用的在线IDE代码编译器,什么?你竟然不知道!

    1.网址https://tech.io/snippet 支持 20+ 种编程语言,页面上没有杂七杂八的东西,非常简约,非常干净,另外,它上面的代码段还可以嵌入到网页之中. 2.网址 https://w ...

  2. CodeForces - 1047CEnlarge GCD(这题很难,快来看题解,超级详细,骗浏览量)

    C. Enlarge GCD time limit per test1 second memory limit per test256 megabytes inputstandard input ou ...

  3. 【基础】excel如何根据数据内容显示不同颜色。

    需求: 店柜完成率排名相比上阶段升降,升显示绿色“↑“,降显示红色“↓”,持平显示黑色“-”. 步骤: 第一步 先计算两次排名的差值(本次排名-上次排名). 第二步 对差值列设置单元格格式,设置格式如 ...

  4. ArrayList扩容机制实探

    ArrayList初始化 问题:执行以下代码后,这个list的列表大小(size)和容量(capacity)分别是多大? List<String> list = new ArrayList ...

  5. Spark SQL源码解析(四)Optimization和Physical Planning阶段解析

    Spark SQL原理解析前言: Spark SQL源码剖析(一)SQL解析框架Catalyst流程概述 Spark SQL源码解析(二)Antlr4解析Sql并生成树 Spark SQL源码解析(三 ...

  6. Python Web自动化测试入门与实战,从入门到入行

    Python Web自动化测试入门与实战 购买地址 · 京东:https://item.jd.com/69239480564.html   天猫:https://detail.tmall.com/it ...

  7. 疑问_网址参数不同的时候改如何选择_MySQL_芬兰站

    豹子安全-注入工具-疑问_网址参数不同的时候改如何选择_MySQL_芬兰站_kouvolankipparit.fi_基于联合查询_20200416 www.leosec.net 请看下列GIF视频:

  8. 如何使用 Shebang Line (Python 虚拟环境)

    本文记录,如何在 Python Script 中使用 Shebang 行. Shebang Line 是什么: 也被叫做 Hashbang Line,只要是一个由,井号和叹号#!开头,并构成的字符序列 ...

  9. Spring全家桶之spring boot(五)

    Thymeleaf简介 Thymeleaf是一个流行的模板引擎,该模板引擎采用Java语言开发,模板引擎是一个技术名词,是跨领域跨平台的概念,在Java语言体系下有模板引擎,在C#.PHP语言体系下也 ...

  10. JavaScript之ES5的继承

    自从有了ES6的继承后,ES5的继承也退出了舞台,在实际开发也不会用得着: 先看看ES6的继承 class Father{ constructor(a){ console.log(a); } play ...