NodeJS的多版本安装及切换

简介

为什么会写这么一篇博客呢,一是考虑到备份问题,二是考虑到搜索问题,三则是考虑到其他的文章源可能因为某些原因失效的问题。

那么下面我们就来说说遇到的场景。

当项目使用的Node版本你不清楚是哪个版本的时候,那么你可以到项目的 package.json 文件中找到下面的内容

"engines": {
    "node": ">= 6.0.0",
    "npm": ">= 3.0.0"
  },

这个节点呢就明确的告诉了你node的版本需要什么版本以上的,那么在这个版本之上,可以随便找一个版本去安装就可以了

那为什么要用到多版本切换呢,理论上大于6.0.0的版本不是就完全可以了么?还装那么多Node版本不是多此一举么?

这个跟历史有关系,每个Node的版本所依赖的包也都是不同的个人及团体创建的,版本号不可能全部完全统一,每个包的维护和更新也都跟团队的更新进度有关系,所以也就产生了Node包更新的时候也同样的支持了不同包的版本号

那多版本切换使用在什么场景下呢

当你安装的包发现,无论怎么安装依赖都无法正常运行的时候,或者无法安装成功的时候,就要根据错误提示,去找不支持当前Node版本的包的依赖包,它支持的Node版本是哪个,那么你就要安装这个版本的Node来运行这个项目才可以

步骤

这里需要引入一个名词nvm,它是一个多版本管理NodeJS的工具

第一步:下载

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

第二步:安装

按照提示完成安装即可,安装完成后可以检测一下是否安装成功

在cmd命令行输入nvm,如果出现nvm版本号和一系列帮助指令,则说明nvm安装成功。

第三步:修改settings.txt

在你安装的目录下找到settings.txt文件,打开后加上 

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

这一步主要是将npm镜像改为淘宝的镜像,可以提高下载速度。

第四步:node.js 安装

可以先使用 num list 查看本地已安装的版本

然后使用 nvm list available 查看所有版本

NVM常用命令
nvm list 查看已经安装的版本
nvm list installed 查看已经安装的版本
nvm list available 查看网络可以安装的版本
nvm version 查看当前的版本
nvm install 安装最新版本nvm
nvm use <version> ## 切换使用指定的版本node
nvm ls 列出所有版本
nvm current显示当前版本
nvm alias <name> <version> ## 给不同的版本号添加别名
nvm unalias <name> ## 删除已定义的别名
nvm reinstall-packages <version> ## 在当前版本node环境下,重新全局安装指定版本号的npm包
nvm on 打开nodejs控制
nvm off 关闭nodejs控制
nvm proxy 查看设置与代理
nvm node_mirror [url] 设置或者查看setting.txt中的node_mirror,如果不设置的默认是 https://nodejs.org/dist/
nvm npm_mirror [url] 设置或者查看setting.txt中的npm_mirror,如果不设置的话默认的是: https://github.com/npm/npm/archive/.
nvm uninstall <version> 卸载制定的版本
nvm use [version] [arch] 切换制定的node版本和位数
nvm root [path] 设置和查看root路径

第五步:获取所有可以安装的 Node.js 版本

nvm list available

LTS 指最新稳定版本,CURRENT 指最新版本,一般安装 LTS

第六步:安装指定版本的 Node.js

nvm install 10.11.0

第七步:列出所有已经安装的版本

nvm list

第八步:指定当前要使用的 Node.js 版本,只用指定使用的 Node.js 版本后,nodejs 的才真正安装了。

nvm use 10.11.0

第九步:卸载某个 Node.js 版本

nvm uninstall 10.11.0

到此呢,使用nvm来管理你的NodeJS的多版本安装和切换就完全足够了,如果想要研究更深层次的,可以去玩一玩nvm的命令,深刻理解一下。

 

 

文献参考:

https://www.cnblogs.com/czql/articles/11064849.html

https://www.runoob.com/w3cnote/node-multi-version.html (手动安装node多版本)

https://www.cnblogs.com/stevexu/p/9734249.html

posted @ 2022-03-04 09:06  MartyZane  阅读(1107)  评论(0编辑  收藏  举报