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 版本。

相关推荐
掰头战士9 小时前
从LLM到Agent、Agent的6大核心。这些基础知识你还记得吗
node.js·llm·agent
FungLeo12 小时前
成为全栈·Node 后端篇·注册登录全流程实现
node.js·登录流程·成为全栈·注册流程
AI大模型-小华15 小时前
Codex CLI第一次怎么用?从安装到读取本地项目完整教程
git·node.js·ai编程·开发工具·代码分析·codex·codex cli
晴天1615 小时前
打造自己的 npm 包实战指南
前端·npm·node.js
西西小飞龙16 小时前
npm vs pnpm
前端·npm·node.js
FungLeo16 小时前
成为全栈·Node 后端篇·权限模型:从认证到 RBAC
node.js·rbac·用户认证·权限模型·成为全栈
码力斜杠哥18 小时前
CodeBuddy + Node.js 后端API完整开发指南
node.js
八角丶1 天前
Node 网络编程 —— TLS 模块
javascript·后端·node.js
嘿嘿-662 天前
Cherry Studio 接入ChatGpt:GPT-5.6 Sol 文本测试与 GPT-Image-2 出图教程
人工智能·gpt·ai·chatgpt·node.js·ai编程
大牧师2 天前
TypeORM 学习教程
数据库·sql·学习·node.js·orm·nest.js·typeorm