electron运行项目better-sqlite3连接失败的问题,ABI版本不匹配,使用使用 electron-rebuild 重新编译

better-sqlite3连接失败; npx electron-rebuild执行失败

确保node_modules装了node_gyp,否则出错

复制代码
npm i node-gyp

App threw an error during load

Error: The module '\\?\E:\mysctrip\electron-app\node_modules\better-sqlite3\build\Release\better_sqlite3.node'

was compiled against a different Node.js version using

NODE_MODULE_VERSION 127. This version of Node.js requires

NODE_MODULE_VERSION 140. Please try re-compiling or re-installing

the module (for instance, using `npm rebuild` or `npm install`).

at process.func as dlopen (node:electron/js2c/node_init:2:2617)

at Module._extensions..node (node:internal/modules/cjs/loader:1874:18)

at Object.func as .node (node:electron/js2c/node_init:2:2617)

at Module.load (node:internal/modules/cjs/loader:1448:32)

at Module._load (node:internal/modules/cjs/loader:1270:12)

at c._load (node:electron/js2c/node_init:2:17993)

at TracingChannel.traceSync (node:diagnostics_channel:328:14)

at wrapModuleLoad (node:internal/modules/cjs/loader:244:24)

at Module.require (node:internal/modules/cjs/loader:1470:12)

at require (node:internal/modules/helpers:147:16)

为解决better-sqlite3连接失败,使用electron带的rebuild

在package.json的scripts中添加rebuild指令

复制代码
 "rebuild": "electron-rebuild -f -w better-sqlite3"
复制代码
//依次执行
npx electron-rebuild
npm run dev
//npx electron-rebuild报错
gyp failed with exit code: 1"在已经下了c++环境,node_gyp情况下

一般能装上better-sqlite3这个依赖已经是不会缺环境和其他依赖了,

better-sqlite3连接失败报错信息如下

7304:1227/210732.456:ERROR:CONSOLE:1] "Request Autofill.enable failed. {"code":-32601,"message":"'Autofill.enable' wasn't found"}", source: devtools://devtools/bundled/core/protocol_client/protocol_client.js (1) 7304:1227/210732.456:ERROR:CONSOLE:1 "Request Autofill.setAddresses failed. {"code":-32601,"message":"'Autofill.setAddresses' wasn't found"}", source: devtools://devtools/bundled/core/protocol_client/protocol_client.js (1) 收到数据库连接测试请求 创建data目录: E:\mysctrip\book-write\front_electron_book\editor_books_app 开发环境 - 数据库路径: E:\mysctrip\book-write\front_electron_book\editor_books_app\app.db 数据库初始化失败: Error: The module '\\?\E:\mysctrip\book-write\front_electron_book\node_modules\better-sqlite3\build\Release\better_sqlite3.node' was compiled against a different Node.js version usingun

//npx electron-rebuild报错信息如下

An unhandled error occurred inside electron-rebuild

node-gyp failed to rebuild 'E:\mysctrip\book-write\front_electron_book\node_modules\better-sqlite3'.

For more information, rerun with the DEBUG environment variable set to "electron-rebuild".

Error: `gyp` failed with exit code: 1

Error: node-gyp failed to rebuild 'E:\mysctrip\book-write\front_electron_book\node_modules\better-sqlite3'.

For more information, rerun with the DEBUG environment variable set to "electron-rebuild".

Error: `gyp` failed with exit code: 1

at NodeGyp.rebuildModule (E:\mysctrip\book-write\front_electron_book\node_modules\electron-rebuild\lib\src\module-type\node-gyp.js:120:19)

at process.processTicksAndRejections (node:internal/process/task_queues:105:5)

at async ModuleRebuilder.rebuildNodeGypModule (E:\mysctrip\book-write\front_electron_book\node_modules\electron-rebuild\lib\src\module-rebuilder.js:98:9)

at async ModuleRebuilder.rebuild (E:\mysctrip\book-write\front_electron_book\node_modules\electron-rebuild\lib\src\module-rebuilder.js:128:14)

at async Rebuilder.rebuildModuleAt (E:\mysctrip\book-write\front_electron_book\node_modules\electron-rebuild\lib\src\rebuild.js:149:13)

at async Rebuilder.rebuild (E:\mysctrip\book-write\front_electron_book\node_modules\electron-rebuild\lib\src\rebuild.js:112:17)

at async E:\mysctrip\book-write\front_electron_book\node_modules\electron-rebuild\lib\src\cli.js:158:9

相关推荐
其美杰布-富贵-李6 分钟前
第 10 篇:灯光与阴影
javascript·three.js
小高0072 小时前
🔥🔥🔥TypeScript 7 正式版来了:别只看 10 倍速度,这 4 个迁移坑更值得注意
前端·javascript·面试
di24k24k2 小时前
多个 el-form 共用同一 ref 导致表单校验部分失效
前端·javascript·vue.js·elementui
JKooll3 小时前
WPS 表格 DISPIMG 函数实战:用 JavaScript 将图片真正嵌入单元格
javascript·wps
晴天163 小时前
Rust 快速入门 (从 JavaScript 开发者视角)-Day09
开发语言·javascript·rust
其美杰布-富贵-李4 小时前
第 6 篇:相机与 OrbitControls
前端·javascript·three.js
Hilaku5 小时前
当 AI 一天写完一周的代码,我们还剩什么优势?
前端·javascript·程序员
无责任此方_修行中5 小时前
换个版本号就能升级?可没那简单:pnpm 11 升级踩坑记
javascript·后端·npm
尘世中一位迷途小书童5 小时前
无人机航线里的云台角度怎么调?Cesium 做了个视锥 + 鹰眼联动
前端·javascript·数据可视化
张元清5 小时前
React useMeasure Hook:用 ResizeObserver 测量 DOM 元素 (2026)
javascript·react.js