如何管理多个版本的Node.js

我们如何在本地管理多个版本的Node.js,有没有那种不需要重新安装软件再修改配置文件和环境变量的方法?经过我的查找,还真有这种方式,那就是nvm(Node Version Manager)

下面我就给大家介绍下NVM的使用

1. nvm的介绍和下载

首先,Node.js支持多版本共存,nvm是一个跨平台的命令行工具,可以在Mac、Linux、Windows等各种操作系统上使用。

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

进入之后在右边选择合适的版本下载:

一般就选择.exe和.zip下载,我是下载的.exe版本然后安装。

注意:如果选择的.exe版本,在安装时会让选择目前你电脑上Node.js的安装路径,这样安装nvm之后你电脑上的Node.js版本就被nvm管理了。

如果大家在github上无法下载,可以使用下面的链接,我已经帮大家下载好了。

https://download.csdn.net/download/wu2374633583/89309118

2. 配置nvm

安装之后输入nvm -v

如果显示不是命令的话,那就是环境变量没有配置好,就得需要检查下环境变量是否配置,一般情况下是不需要手动配置。

3. nvm更换Node.js版本

nvm list available 命令可以查看你的电脑可以安装的Node.js版本。

复制代码
// 查看可安装的Node.js版本
nvm list available           

这里我给大家简单说下上面的版本标签代表的含义,首先我们要知道在Node.js的版本管理体系中,不同类型的版本标签代表了软件成熟度和维护周期的不同阶段:

  • CURRENT: 这个标签指的是Node.js的当前版本,也称为"Current"版本。它是包含最新特性和改进的版本,但可能不够稳定,适用于那些希望尝试Node.js最新功能的开发者或是进行前瞻性的开发和测试。由于可能存在未发现的bug或兼容性问题,生产环境中使用需谨慎。

  • LTS (Long-Term Support): LTS版本是Node.js的长期支持版 ,强调的是稳定性和持续的支持。这类版本经过较长时间的测试,修复了已知的bug,并且在一段时间内(通常是几年)会持续收到安全更新和重要错误修正,但不会增加大量新特性。对于构建生产应用来说,LTS版本是最安全和推荐的选择,因为它能确保你的应用在未来一段时间内可以持续获得维护和支持。

  • OLD STABLE: 这是指过去的稳定版本 ,它们曾经是LTS版本,但在新的LTS版本推出后,它们的支持周期逐渐结束或已经结束。虽然它们相对稳定,但由于不再接收官方的更新和维护,除非有特殊需求(比如与旧系统的兼容性),否则一般不建议使用。

  • OLD UNSTABLE: 这类版本指的是那些既不是当前版本,也不是稳定版或长期支持版的旧版本,它们可能包含已知问题且不再接受官方支持或更新。除非有特别的历史遗留项目需要,否则不建议使用此类版本

所以我们如果没有特殊需要,安装LTS的最新版即可。

安装命令:

复制代码
// 安装20.13.1版本的Node.js
nvm install 20.13.1

如果出现successfully就是安装新版本安装成功了,现在你可以使用nvm更换Node.js版本了。

切换命令如下:

复制代码
// 切换使用指定版本的Node.js
nvm use 20.13.1        

还可以查看nvm管理的本地nodejs都有哪些版本,命令如下:

复制代码
// 查看已安装的Node.js版本
nvm list  
相关推荐
嘟嘟07173 小时前
NestJS 入门:从 NestFactory 入口到 Module/Controller/Service 模块化结构一次讲清
typescript·node.js·nestjs
breeze jiang5 小时前
NestJS MVC 实战:用 hello 项目 7 个文件讲清分层、装饰器、依赖注入与错误处理
node.js·mvc·js
m0_3807438715 小时前
从零调用 Claude 教程
开发语言·python·node.js
烬羽18 小时前
从 nest new 到 Hello World:一个最小 NestJS 项目,讲透工厂 + 装饰器 + 模块化
设计模式·node.js·nestjs
渔夫正在掘金21 小时前
Cordis 中文教程:渐进式构建插件化应用
前端·node.js·ai编程
大家的林语冰1 天前
✌️ 让 Rust 再次伟大,pnpm 12 抛弃 TypeScript,移植 Rust 原地起飞!
前端·javascript·node.js
抓不住时间的沙1 天前
butterfly主题美化,打造属于自己的个性博客
java·开发语言·前端·javascript·node.js·github
抓不住时间的沙1 天前
N1搭建Hexo个人博客,部署到Github
python·docker·node.js·debian·github·arm
必须会一定会1 天前
Node.js Agent Handoff 仓库扫描 MVP:忽略规则、include 通配与稳定输出实现
人工智能·node.js·ai编程
八角丶2 天前
Node.js Cluster 详解
前端·node.js