You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行Gatsby项目开发命令时Node版本检测异常问题求助

执行Gatsby项目开发命令时Node版本检测异常问题求助

问题描述

我最近碰到个闹心的问题:当我执行npm run develop(手滑写成rpm run develop了,抱歉)启动Gatsby项目的开发服务时,直接弹出错误:

Error: Gatsby requires Node.js 18.0.0 or higher (your version is v16.20.1).

但我单独在终端跑node -v,显示的明明是v18.19.0啊!后来我用nvm ls查了下已安装的Node版本,输出如下:

v14.21.3
v16.20.1
v18.17.0
v18.19.0
->      v20.5.0

system
default -> 20.5.0 (-> v20.5.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v20.5.0) (default)
stable -> 20.5 (-> v20.5.0) (default)
lts/* -> lts/iron (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.3
lts/gallium -> v16.20.2 (-> N/A)
lts/hydrogen -> v18.19.0
lts/iron -> v20.10.0 (-> N/A)

看得出来系统默认已经是v20.5.0了,我甚至把v16.20.1都卸载了,但还是跳这个错误。之前跟着Copilot的建议试了一堆方法:删npm包重装、设置默认NPM版本、加.nvm文件、改package.json的engines字段,全没用。有没有大佬能帮我捋捋这到底哪出问题了?


我的排查建议(踩过类似坑的过来人)

  • 先重启终端试试!
    有时候nvm的版本切换不会立刻同步到所有终端会话,尤其是你改了nvm设置后,旧终端还停留在原来的环境里。把所有终端窗口都关了,重新开一个,先跑node -v确认是v20.5.0,再进项目目录执行开发命令,说不定就好了。

  • 检查项目里的.nvmrc文件
    如果你的项目根目录有个.nvmrc文件,那nvm会自动切换到文件里指定的Node版本,哪怕你全局默认是v20。你可以用cat .nvmrc看看里面写的啥,如果是v16相关的,改成v20.5.0或者lts/hydrogen(对应v18.19.0),然后跑nvm use切换版本再试试。

  • 确认npm和当前Node版本绑定正确
    有时候npm可能和旧版本的Node绑定在一起了,你可以跑npm config get prefix看看npm的路径,然后去这个路径下查Node版本:$prefix/bin/node -v(把$prefix换成刚才查到的路径)。如果显示的是旧版本,那先跑nvm use 20.5.0,然后重新装一遍最新的npm:npm install -g npm@latest。

  • IDE内置终端的锅?
    如果你是在VS Code这类IDE的内置终端跑命令,IDE可能没加载nvm的配置,导致用了旧版本。试试重启IDE,或者在内置终端里手动跑nvm use 20.5.0再执行开发命令。

  • 清缓存重装依赖
    依赖缓存里的旧信息也可能搞事情,试试这套操作:

    # 清npm缓存
    npm cache clean --force
    # 删除node_modules和锁文件
    rm -rf node_modules package-lock.json
    # 重新装依赖
    npm install
    
  • 检查系统级Node有没有干扰
    虽然你用nvm管理Node,但系统可能还装了全局的Node版本。跑which node看看当前Node的路径,如果不是nvm目录下的(比如~/.nvm/versions/node/v20.5.0/bin/node),那就是系统级Node在捣乱,要么卸载它,要么把nvm的路径放到系统PATH的最前面。


备注:内容来源于stack exchange,提问作者MAZ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 11:27:58