nvm(node版本切换工具)在windows下安装配置记录

node版本切换工具

windows下安装配置nvm

windows下安装配置nvm出现的问题解决


 

当一个开发手中的项目多的时候,就会发现有的项目需要特定node.js,而有的项目需要新版node.js,这个时候就需要 nvm 这款工具了。

文章开始,简单说明一下,此教程不适合电脑新手,很多简单东西都是一带而过,没有保姆级截图。但是重点地方,都会贴代码。想好了再往后看。

一、什么是nvm?

   nvm就是【nodejs version manage】 叫做nodejs 版本管理,而nodejs有很多版本,场景如下:

   1、而你手上开发的有多个项目又分别是不同的nodejs版本,咱们就可以用nvm轻松切换!

   2、假设你正在开发的项目开始使用的nodejs版本是8.0,而现在因为某些原因,你需要升级 或者 降级 nodejs 版本,也可以使用 nvm 轻松切换

二、nvm在windows下的安装与配置

  首先需要知道的几个地址:

  安装开始之前,需要确定电脑中没有node.js,有的话需要先卸载掉,卸载后不需要重启(不放心就自行重启)

 2.1、nvm 安装:

  输入 上面的 nvm 下载地址后,在 Assets专栏 就会看到,所有nvm 下载文件。windows 根据各自需要,建议下载以下两种类型中的一种:

  • nvm-setup.exe
  • nvm-setup.zip

  我是在自己电脑上使用 ,就下载 .exe 结尾的文件。然后双击安装,选择同意此条款。安装目录根据个人喜欢选择。

  • 建议:系统管理软件建议安装C盘。
  • 参考我的安装路径:C:\Program Files\nvm

  安装完成后,打开 cmd 输入指令:nvm version  查看 nvm版本。

C:\Users\Administrator>nvm version
1.1.9

  如果输入指令报错,如下:

C:\Users\Administrator>nvm version
'nvm' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

  检查两种情况:

  • nvm 是否安装成功
  • 电脑属性、环境变量、系统变量是否有,nvm、nodejs安装地址(个别情况)

 2.2、配置 nvm :

  一般,在通过 nvm 下载 node 前,需要给 nvm 设置 node 和 npm 镜像地址,防止下载失败。

  在 nvm 安装目录,找到 setting.txt 最后加上如下两行:

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

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

root: C:\Program Files\nvm
path: C:\Program Files\nodejs
node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

具体配置说明:(来源于网络)

配置说明:

root:nvm的存放地址

path:存放指向node版本的快捷方式,使用nvm的过程中会自动生成。一般写的时候与nvm同级。

arch:电脑系统是64位就写64,32位就写32

proxy:代理

node_mirror:node镜像

npm_mirror:npm镜像

  注意:如果直接修改文件提示无法保存,可以把 setting.txt 文件 拷贝到 桌面或者其他地方,添加完毕后,再移动覆盖原文件即可。

2.3、通过 nvm 下载 node:

  nvm 配置 结束后,就可以 下载node.js了

  如果你不知道现在node.js啥版本,可以参考上面的【nodejs 下载地址】查看现在最新的版本。

2.3.1、nvm list available 指令

也可以通过: nvm list available 指令查看可下载的 nodejs 版本信息,根据需要下载对应的版本,LTS列 表示 稳定版本。

PS C:\WINDOWS\system32>nvm list available
|   CURRENT    |     LTS      |  OLD STABLE  | OLD UNSTABLE |
|--------------|--------------|--------------|--------------|
|    18.6.0    |   16.16.0    |   0.12.18    |   0.11.16    |
|    18.5.0    |   16.15.1    |   0.12.17    |   0.11.15    |
|    18.4.0    |   16.15.0    |   0.12.16    |   0.11.14    |
|    18.3.0    |   16.14.2    |   0.12.15    |   0.11.13    |
|    18.2.0    |   16.14.1    |   0.12.14    |   0.11.12    |
|    18.1.0    |   16.14.0    |   0.12.13    |   0.11.11    |
|    18.0.0    |   16.13.2    |   0.12.12    |   0.11.10    |
|    17.9.1    |   16.13.1    |   0.12.11    |    0.11.9    |
|    17.9.0    |   16.13.0    |   0.12.10    |    0.11.8    |
|    17.8.0    |   14.20.0    |    0.12.9    |    0.11.7    |
|    17.7.2    |   14.19.3    |    0.12.8    |    0.11.6    |
|    17.7.1    |   14.19.2    |    0.12.7    |    0.11.5    |
|    17.7.0    |   14.19.1    |    0.12.6    |    0.11.4    |
|    17.6.0    |   14.19.0    |    0.12.5    |    0.11.3    |
|    17.5.0    |   14.18.3    |    0.12.4    |    0.11.2    |
|    17.4.0    |   14.18.2    |    0.12.3    |    0.11.1    |
|    17.3.1    |   14.18.1    |    0.12.2    |    0.11.0    |
|    17.3.0    |   14.18.0    |    0.12.1    |    0.9.12    |
|    17.2.0    |   14.17.6    |    0.12.0    |    0.9.11    |
|    17.1.0    |   14.17.5    |   0.10.48    |    0.9.10    |

This is a partial list. For a complete list, visit https://nodejs.org/en/download/releases

2.3.2、nvm install <版本号> 指令

开始下载node.js,通过:nvm install <版本号> 指令,出现以下内容,代表下载成功。

同时 nvm 的安装目录(也就是C盘安装目录)就会生成对应的版本号文件夹。

示例一:下载 v16.15.1

PS C:\WINDOWS\system32>nvm install 16.15.1
Downloading node.js version 16.15.1 (64-bit)...
Extracting...
Complete


Installation complete. If you want to use this version, type

nvm use 16.15.1

  示例二:下载 v14.20.0

C:\WINDOWS\system32>nvm install 14.20.0
Downloading node.js version 14.20.0 (64-bit)...
Complete
Creating C:\Program Files\nvm\temp

Downloading npm version 6.14.17... Complete
Installing npm v6.14.17...

Installation complete. If you want to use this version, type

nvm use 14.20.0

  看着有些不同,应该是各版本之间的区别,只要没报错,基本都是下载成功。

  如果输入指令,报错如下:

C:\Users\Administrator>nvm install 14.20.0
Downloading node.js version 14.20.0 (64-bit)...
Error
while creating C:\Program Files\nvm\v14.20.0\node64.exe - open C:\Program Files\nvm\v14.20.0\node64.exe: Access is denied. Could not download node.js v14.20.0 64-bit executable.

  检查两种情况:

  • 是否成功配置 nvm(参考第二步)
  • cmd 或者 powerShell 是否用 管理员模式打开(这步也很重要)。这里有些人不知道是否是管理员模式运行,可以参考以下判断:
    • 前缀(普通模式):C:\Users\Administrator>
    • 前缀(管理员模式)C:\WINDOWS\system32>

2.3.3、nvm list 与 nvm use<版本号>指令

  上述,下载了两个版本,虽然都没有报错,但是安装你要的 nodejs 版本,必须是 nodejs 和  npm 都成功。才是真的都能使用。

  在测试  nodejs 和 npm 是否都安装成功前,我们还需要先选择 node.js 版本,否则 查看  nodejs 和 npm 会直接报错。(第一次安装必须进行此操作)

  通过:nvm list 指令,查找本电脑上所有的node版本

PS C:\WINDOWS\system32> nvm list

    16.15.1
    14.20.0

  通过:nvm use <版本号> 指令,切换使用指定的版本node

PS C:\WINDOWS\system32> nvm use 16.15.1
Now using node v16.15.1 (64-bit)
PS C:\WINDOWS\system32
> nvm list * 16.15.1 (Currently using 64-bit executable) 14.20.0

  有时候 nodejs 的 npm 不会下载成功,不成功的原因很多。检查安装的 node.js版本是否完成,包含 npm。

  示例一: 检查 v16.15.1

C:\Users\Administrator>node -v
v16.15.1

C:\Users\Administrator>npm -v
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
8.11.0

   示例二: 检查 v14.20.0

C:\Users\Administrator>node -v
v14.20.0

C:\Users\Administrator>npm -v
6.14.17

  看来我下载的 node.js 是都能用的,并没有网上说的哪些情况。

  如果输入指令,报错如下:

C:\Users\Administrator>npm -v
'npm' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

  解决办法:

  1. 网上很多人说,目前发现 8.11以上版本的 node 版本对应的 npm 都没法自动安装,需要自己到 npm官网 下载手动安装 node.js 对应的npm版本。
    • 弊端:你知道你用node.js 对应 npm 版本还好,不知道,就没啥用。例如:node.js v16.15.1 对应 npm v8.11.0
  2. 自己去node.js 官网下载 对应的 node.js 压缩包,解压进行替换,这也是最简单的方式。

 2.4、nvm 常用指令

指令 说明
nvm help  nvm常用命令官方介绍
nvm version / v 查看nvm 安装的版本
nvm list available 显示可下载的node版本
nvm install latest 安装最新的版本
nvm install [node version] 安装指定的版本
nvm install stable 升级到稳定版

nvm install

nvm list / ls

列出nvm已经安装的nodejs版本

nvm current

查看当前系统nodejs使用版本

nvm use [node version]

切换使用指定版本的nodejs

nvm uninstall

卸载指定版本

(手动删除nvm下的文件夹也可卸载)

 

参考文档:

nvm 文档手册网址:nvm文档手册 - nvm是一个nodejs的版本管理工具

nodejs所有版本的json: 

 

posted @ 2022-07-21 00:44  不言谢  阅读(2964)  评论(0编辑  收藏  举报