使用nvm安装nodejs遇上的坑和解决方案

一、关于nvm

省略

二、关于nodejs

省略

三、关于npm

省略

四、各种地址

nvm下载地址:https://github.com/coreybutler/nvm-windows/releases

node和npm版本对照:以往的版本 | Node.js (nodejs.org)

node下载地址:Index of /dist/ (nodejs.org)

npm下载地址:CNPM Binaries Mirror (npmmirror.com)

五、nvm部分指令

nvm list available              // 显示可下载的部分列表

nvm install [email protected]        // 安装指定版本的node

nvm uninstall [email protected]      // 卸载指定版本node

nvm -v                          // 查看nvm版本

nvm ls                          // 查看下载的node列表

nvm use 18.12.0                 // 切换node

六、问题

1、使用nvm安装node时,控制台不能识别npm指令

例如使用nvm install [email protected]安装18.12.0版本的node,输入node -v很成功地显示对应版本,但是输入npm时却提示npm不是可识别地指令。

此时检查nvm目录中18.12.0文件夹,会发现只有图片中这两个文件。


一般来说,安装node时对同时安装对应地npm,但很明显,这里并没有成功安装npm,原因不太能确定,就不班门弄斧了。

解决方案:

方案一(不推荐):

在四中npm和node对照地址,找对18.12.0对应的npm版本,到npm下载地址中下载对应的npm。比如node18.12.0对应的npm版本为8.19.2,下载解压缩后将目录中所有文件复制到node文件夹中对应路径上,如图:


复制到以下路径,node_modules中要是没有npm要自己创建。

接着把npm中bin目录下所有文件复制到node的根目录下


其实核心是npm、npm.cmd、npx、npx.cmd这几个文件吧,其他复不复制应该都无所谓。

做到这一步重开一个cmd输入npm -v应该就能看到版本号了。

方案二(推荐):

可以发现以上操作繁琐麻烦,治标不治本,所以推荐方案二。

直接到node下载地址中把18.12.0下载下来解压到nvm中,把文件夹命名为v18.12.0,路径如图(这里我下载的是18.12.1):


做完这一步新开一个cmd输入npm -v应该就能看到版本号,记得活用nvm指令切换node版本和查看node列表。

不过这个方案并没有解决nvm安装node后无法使用npm指令的问题,依旧是治标不治本,如果有更好的方法可以在评论中留言。

2、使用npm安装某些插件时提示以下错误:


这是由于node版本太高导致的,我用的是18.12.0的版本,将版本下降到14.18.1,在重新安装就可以了。

这不得不吐槽了,版本太高还不给下载,这你稳定长期支持版本一点都不稳定啊,那我还用不用高版本了。

再遇到nvm的问题会在本文章中补充。

你可能感兴趣的:(使用nvm安装nodejs遇上的坑和解决方案)