Node.js入门教程(五):NVM 管理多版本 Node.js
一、为什么需要 nvm在日常开发中我们经常会遇到需要切换 Node.js 版本的情况场景说明不同项目需求不同项目 A 需要 Node.js 18项目 B 需要 Node.js 16兼容性测试测试应用在不同 Node.js 版本下的运行情况版本升级方便升级到最新版本同时保留旧版本以便回退尝鲜新特性使用 Current 版本体验新功能不影响生产项目nvmNode 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-windowsWindows 用户需要使用nvm-windows不同于 macOS/Linux 的 nvm访问 nvm-windows 发布页面https://github.com/coreybutler/nvm-windows/releases下载nvm-setup.zip解压并运行安装程序按照向导完成安装安装完成后打开新的命令行窗口验证nvm --version三、nvm 常用命令版本管理命令命令说明nvm --version查看 nvm 版本nvm list-remote列出所有可安装的 Node.js 版本macOS/Linuxnvm list available列出可安装的 Node.js 版本Windowsnvm install 版本号安装指定版本nvm install --lts安装最新的 LTS 版本nvm uninstall 版本号卸载指定版本版本切换命令命令说明nvm list或nvm ls列出已安装的版本nvm use 版本号切换到指定版本nvm current查看当前使用的版本nvm alias default 版本号设置默认版本四、实际使用示例1. 查看可安装的版本# macOS/Linux nvm list-remote # 输出大量版本列表如 v18.17.0, v20.10.0 等 # Windows nvm list available2. 安装特定版本# 安装 Node.js 18.17.0 nvm install 18.17.0 # 安装 Node.js 16.20.1 nvm install 16.20.1 # 安装最新的 LTS 版本 nvm install --lts3. 列出已安装的版本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.15. 查看当前使用的版本nvm current # 输出类似v18.17.06. 设置默认版本每次打开新终端时默认使用的版本nvm alias default 18.17.07. 卸载版本nvm uninstall 16.20.1五、项目级版本管理.nvmrcnvm 支持通过.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 --version2. 创建测试程序创建一个名为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 操作系统: darwin3. 检查全局安装路径# 查看 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/wgetWindows 用 nvm-windows常用命令nvm install、nvm use、nvm list、nvm alias项目配置使用.nvmrc文件为项目指定版本默认版本nvm alias default设置默认使用的版本多项目切换不同项目目录使用不同 Node.js 版本提示养成在项目根目录放置.nvmrc文件的习惯团队成员也能自动使用正确的 Node.js 版本。