Node.js入门教程(五):NVM 管理多版本 Node.js

一、为什么需要 nvm?

在日常开发中,我们经常会遇到需要切换 Node.js 版本的情况:

场景 说明
不同项目需求不同 项目 A 需要 Node.js 18,项目 B 需要 Node.js 16
兼容性测试 测试应用在不同 Node.js 版本下的运行情况
版本升级 方便升级到最新版本,同时保留旧版本以便回退
尝鲜新特性 使用 Current 版本体验新功能,不影响生产项目

nvm(Node Version Manager) 正是为了解决这些问题而生的工具,它可以让你在同一台机器上安装和管理多个 Node.js 版本,并在它们之间快速切换。

二、安装 nvm

在 macOS / Linux 上安装

使用 curl 安装:

复制代码
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

或使用 wget 安装:

复制代码
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

安装完成后,重新加载 shell 配置:

复制代码
# 如果使用 bash
source ~/.bashrc

# 如果使用 zsh
source ~/.zshrc

验证安装是否成功:

复制代码
nvm --version
# 输出类似:0.39.3

在 Windows 上安装(nvm-windows)

Windows 用户需要使用 nvm-windows(不同于 macOS/Linux 的 nvm):

  1. 访问 nvm-windows 发布页面:https://github.com/coreybutler/nvm-windows/releases

  2. 下载 nvm-setup.zip

  3. 解压并运行安装程序,按照向导完成安装

安装完成后,打开新的命令行窗口验证:

复制代码
nvm --version

三、nvm 常用命令

版本管理命令

命令 说明
nvm --version 查看 nvm 版本
nvm list-remote 列出所有可安装的 Node.js 版本(macOS/Linux)
nvm list available 列出可安装的 Node.js 版本(Windows)
nvm install <版本号> 安装指定版本
nvm install --lts 安装最新的 LTS 版本
nvm uninstall <版本号> 卸载指定版本

版本切换命令

命令 说明
nvm listnvm ls 列出已安装的版本
nvm use <版本号> 切换到指定版本
nvm current 查看当前使用的版本
nvm alias default <版本号> 设置默认版本

四、实际使用示例

1. 查看可安装的版本

复制代码
# macOS/Linux
nvm list-remote
# 输出大量版本列表,如 v18.17.0, v20.10.0 等

# Windows
nvm list available

2. 安装特定版本

复制代码
# 安装 Node.js 18.17.0
nvm install 18.17.0

# 安装 Node.js 16.20.1
nvm install 16.20.1

# 安装最新的 LTS 版本
nvm install --lts

3. 列出已安装的版本

复制代码
nvm list

输出示例:

复制代码
->     v16.20.1
       v18.17.0
         system
default -> v16.20.1 (-> v16.20.1)

-> 表示当前正在使用的版本

4. 切换版本

复制代码
# 切换到 Node.js 18.17.0
nvm use 18.17.0

# 验证当前版本
node --version  # 输出:v18.17.0

# 切换到 Node.js 16.20.1
nvm use 16.20.1

# 验证当前版本
node --version  # 输出:v16.20.1

5. 查看当前使用的版本

复制代码
nvm current
# 输出类似:v18.17.0

6. 设置默认版本

每次打开新终端时,默认使用的版本:

复制代码
nvm alias default 18.17.0

7. 卸载版本

复制代码
nvm uninstall 16.20.1

五、项目级版本管理(.nvmrc)

nvm 支持通过 .nvmrc 文件为项目指定 Node.js 版本,实现自动切换。

创建 .nvmrc 文件

在项目根目录下创建 .nvmrc 文件,写入需要的版本号:

复制代码
# 在项目目录中
echo "18.17.0" > .nvmrc

使用 .nvmrc

进入项目目录后,执行 nvm use 会自动读取 .nvmrc 中的版本:

复制代码
cd my-project
nvm use
# 输出:Found '/my-project/.nvmrc' with version <18.17.0>
# 自动切换到 v18.17.0

六、不同项目使用不同版本

复制代码
# 项目 A 使用 Node.js 18
cd ~/projects/project-a
nvm use 18.17.0
node --version   # v18.17.0

# 项目 B 使用 Node.js 16
cd ~/projects/project-b
nvm use 16.20.1
node --version   # v16.20.1

这样在不同的项目目录之间切换时,可以快速切换到对应的 Node.js 版本。

七、验证安装是否成功

1. 检查 nvm 版本

复制代码
nvm --version

2. 创建测试程序

创建一个名为 hello.js 的文件:

复制代码
// hello.js
console.log('Hello, Node.js!');
console.log('Node.js 版本:', process.version);
console.log('当前工作目录:', process.cwd());
console.log('操作系统:', process.platform);

运行测试:

复制代码
node hello.js

预期输出(版本号取决于当前使用的版本):

复制代码
Hello, Node.js!
Node.js 版本: v18.17.0
当前工作目录: /Users/username/projects
操作系统: darwin

3. 检查全局安装路径

复制代码
# 查看 npm 全局包安装路径
npm config get prefix

# 查看 npm 配置
npm config list

# 查看 Node.js 安装路径(macOS/Linux)
which node

# 查看 Node.js 安装路径(Windows)
where node

八、本章小结

知识点 说明
nvm 是什么 Node Version Manager,用于管理多个 Node.js 版本
安装方式 macOS/Linux 用 curl/wget;Windows 用 nvm-windows
常用命令 nvm installnvm usenvm listnvm alias
项目配置 使用 .nvmrc 文件为项目指定版本
默认版本 nvm alias default 设置默认使用的版本
多项目切换 不同项目目录使用不同 Node.js 版本

提示 :养成在项目根目录放置 .nvmrc 文件的习惯,团队成员也能自动使用正确的 Node.js 版本。

相关推荐
空の鱼10 小时前
Mac 上 Node 版本管理(brew + nvm 共存方案)
macos·node.js
请你吃div10 小时前
Node 后端项目 Docker 自动部署教程(GitHub + 宝塔 + Self-hosted Runner)
后端·docker·node.js
泠曦れいひ11 小时前
在当前项目中安装Vite
前端框架·npm·node.js
Joseph 乔12 小时前
【NVM】node 和 nvm 卸载(安装 node & nvm & npm & cnpm & yarn 及配置)
npm·node.js
frjc16 小时前
Node.js 与 npm 极简安装教程
前端·npm·node.js
水獭比特1 天前
工作流都公开了,为什么还不能继承 Owner 权限?
javascript·人工智能·node.js
冲冲1 天前
nvm-windows的安装
node.js
秋秋小事2 天前
LangChain的核心概念与生态
node.js
翼龙云_cloud2 天前
阿里云国际服务器代理商:ECS 快速部署 Node.js 项目实战指南
服务器·阿里云·node.js
FEF前端团队2 天前
小程序微信支付 V3 接入实战手册:从商户配置到前后端落地
javascript·后端·node.js