浅析nvm介绍、安装与使用以及遇到的问题解决

一、nvm 是什么

  nvm 全名 node.js version management,是一个 nodejs 的版本管理工具。通过它可以安装和切换不同版本的 nodejs,主要解决 node 各种版本存在不兼容现象。

  在工作中,我们可能同时在进行2个或者多个不同的项目开发,每个项目的需求不同,进而不同项目必须依赖不同版本的 NodeJS 运行环境,这种情况下,对于维护多个版本的 node 将会是一件非常麻烦的事情。nvm 就是为解决这个问题而产生的,他可以方便的在同一台设备上进行多个node版本之间切换。

二、下载nvm

  可以下载最新nvm版本,本次下载安装的是windows版本。git 下载地址:https://github.com/coreybutler/nvm-windows/releases,打开网址我们可以看到以下安装包:

  选择安装版:下载地址中,nvm-noinstall.zip 是免安装版,nvm-setup.zip 是安装版。安装版可以自动设置环境变量。

  这里有一篇文章,讲解了具体如何安装或配置安装版或免安装版,可以学习下:《nvm安装踩坑过程 - https://blog.csdn.net/zoujiawei6/article/details/85322170》

1、需要注意的是:安装 nvm 路径最好不要出现中文和空格

2、镜像加速

  下载后按照默认配置一步步安装,由于国外的镜像源下载慢,所以可以打开 nvm 的安装位置,打开 nvm\settings.txt 添加:

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

三、安装、管理 node 常用命令

nvm off                     // 禁用node.js版本管理(不卸载任何东西)
nvm on                      // 启用node.js版本管理
nvm install <version>       // 安装node.js的命名 version是版本号 例如:nvm install 8.12.0
nvm uninstall <version>     // 卸载node.js是的命令,卸载指定版本的nodejs,当安装失败时卸载使用
nvm ls                      // 显示所有安装的node.js版本
nvm list available          // 显示可以安装的所有node.js的版本
nvm use <version>           // 切换到使用指定的nodejs版本
nvm v                       // 显示nvm版本
nvm install stable          // 安装最新稳定版

  其他命令提示:

nvm arch :显示node是运行在32位还是64位。

nvm install [arch] :安装node, version是特定版本也可以是最新稳定版本latest。可选参数arch指定安装32位还是64位版本,默认是系统位数。可以添加–insecure绕过远程服务器的SSL。

nvm proxy [url] :设置下载代理。不加可选参数url,显示当前代理。将url设置为none则移除代理。

nvm node_mirror [url] :设置node镜像。默认是https://nodejs.org/dist/。如果不写url,则使用默认url。设置后可至安装目录settings.txt文件查看,也可直接在该文件操作。

nvm use [version] [arch] :使用制定版本node。可指定32/64位。

nvm root [path] :设置存储不同版本node的目录。如果未设置,默认使用当前目录。

四、遇到问题解决

1、windows 上安装 nvm 后选择 node 版本出现 exit status 1...

  问题:nvm install x.x.x 可以安装成功,但无法切换和使用,报错 exit status 1

  原因:把 nvm 安装到了有空格的路径上(D:\Program Files),导致切换失败

  解决:把 nvm 卸载重装到没有空格的路径上(例如:D:\nvm),即可解决问题

2、nvm 在 CMD 中不生效

  报错:nvm : 无法将 “nvm” 项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

  意思就是 nvm 还不是个命令,说明没有配置成功。

  原因:当环境变量没配正确时(使用免安装版时需要配置环境变量),重启也不会生效。在确保环境变量配置正确后,重启 cmd 控制台后会生效。

  我用的安装版,我这里使用“以管理员身份运行” CMD 后就可以生效,但是在之前我先点了一下 nvm 应用让其运行(具体原因不清楚)

3、npm Download failed

  有时候安装 node 安装成功之后,会去安装 npm 有时候就会报错 npm 拒绝啥的,具体报错没有记录

  解决:使用镜像加速(把镜像加速的那2行加入,重新开 cmd 安装即可)

4、node 版本安装成功,但是使用时还是之前的版本

  就像这样,我之前安装过node版本 10.15.0,没有卸载,直接安装的 nvm,并用 nvm 安装了 14.18.1 的 node。如下切换成 14.18.1 版本也正常,但是查看 node -v 却还是之前的版本。

  解决:在安装 NVM for Windows 之前,您需要卸载任何现有版本的 node.js,还需要删除任何现有nodejs安装目录。以下是官方原文:

Please note, you need to uninstall any existing versions of node.js before installing NVM for Windows.
Also delete any existing nodejs installation directories.

  所以我卸载了 nvm,卸载了 nodejs,然后重新安装 nvm,再进行相关操作,就可以成功切换 node 版本了。

posted @ 2021-10-13 15:21  古兰精  阅读(6523)  评论(0编辑  收藏  举报