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

replit升级discord.js V13后better-sqlite3出现Node版本不匹配错误求助

报错根因

该报错是原生模块better-sqlite3的编译版本与当前运行的Node.js版本不匹配导致:报错中提到的NODE_MODULE_VERSION 93对应Node.js 16.x版本,而你当前实际生效的Node运行环境对应NODE_MODULE_VERSION 72,也就是Node.js 12.x版本,说明你在shell中升级的Node版本没有被Replit的运行环境实际加载。

修复步骤

1. 强制指定Replit运行的Node版本

在项目根目录创建.replit配置文件,写入以下内容(将入口文件替换为你实际的启动文件路径):

run = "npx node@16 index.js"

配置完成后在shell执行node -v,确认输出为v16.x及以上版本即可。

2. 重新编译适配版本的better-sqlite3

按顺序尝试以下操作,直到问题解决:

  • 直接重建对应模块:执行命令 npm rebuild better-sqlite3
  • 重建失败则清空依赖重装:
    • 执行 rm -rf node_modules package-lock.json 删除旧依赖和锁文件
    • 执行 npm install 重新安装所有依赖
  • 仍报错则强制从源码编译:执行命令 npm install better-sqlite3 --build-from-source

3. 额外检查项

如果操作后仍报错,检查package.json中的engines字段是否限制了Node.js版本,将其修改为>=16.0.0即可。

内容的提问来源于stack exchange,提问作者Refluent

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 13:24:05