Mac 升级 node 版本避坑

459 阅读2分钟

安装 Next.js 遇到报错

You are using Node.js 16.14.0. For Next.js, Node.js version >= v18.17.0 is required.

我当前使用的Node.js版本是16.14.0,但是为了运行Next.js,需要的Node.js版本至少是18.17.0。

使用Node Version Manager(nvm)

对于Linux和macOS:

  1. 如果你还没有安装nvm,可以通过运行以下命令来安装它:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

或者:

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
  1. 安装完成后,重新启动终端或者运行source ~/.bashrc(或相应的shell配置文件),以确保nvm命令可用。
source ~/.bashrc

又遇到报错

source: no such file or directory: /Users/user/.bashrc

原因是.bashrc文件在你的用户目录下不存在。这种情况在macOS上比较常见,因为macOS默认使用的是Zsh(Z shell)作为其终端的shell环境,而不是Bash。从macOS Catalina版本开始,系统默认的shell已经从Bash更改为Zsh。

解决方案

1. 如果你正在使用Bash

如果你确实切换到了Bash并且想要使用.bashrc文件,你可以手动创建这个文件:

touch ~/.bashrc

然后,你可以编辑这个文件,添加你需要的配置。创建完毕后,再次运行source ~/.bashrc应该就不会出现错误了。

2. 如果你正在使用Zsh

对于大多数macOS用户,你可能正在使用Zsh。Zsh使用的配置文件是.zshrc而不是.bashrc。所以,你应该编辑.zshrc文件来添加你的配置:

  1. 打开或创建.zshrc文件:
open -e ~/.zshrc

或者使用你喜欢的文本编辑器打开它。

  1. 添加你需要的配置。
  2. 保存文件并关闭编辑器。
  3. 为了让更改生效,你可以通过运行以下命令来source你的.zshrc文件:
source ~/.zshrc

注意

  • 在编辑.bashrc或.zshrc文件时,确保你知道你在做什么,因为错误的配置可能会影响你的shell环境的行为。
  • 如果你在尝试安装某些工具或软件(例如nvm、rvm等)时遇到这个问题,它们的安装脚本可能会尝试向.bashrc或.zshrc添加配置。在这种情况下,确保你根据你使用的shell类型修改正确的文件。
  1. 现在,你可以安装Node.js的新版本了。要安装最新的18.x版本,运行:
nvm install 18
node -v
  1. 安装完成后,使用nvm use 18来切换到新安装的版本。