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

相关推荐
程序员大阳4 小时前
副队长JavaScript教程(49)-主动抛出异常与错误类型
javascript·异常处理·error·throw·错误类型
hhhjhl5 小时前
Protobuf.js 跨端三方库仓颉适配全流程
javascript·网络·udp
Flynt8 小时前
我把热榜那篇"禁用 axios"逐条实测了一遍:结论大体对,坑在它没讲的地方
前端·javascript·axios
slongzhang_9 小时前
linux 递归删除源码文件|递归删除目录下 *.js,但排除 *.min.js
linux·开发语言·javascript
liyi_hz200812 小时前
O2OA(翱途) V10.1 即将发布|功能再升级,安全再加固,协同更高效!
java·javascript·windows·开源软件
志尊宝13 小时前
AI原生前端开发(029):AI辅助的文档自动生成
javascript·人工智能·ai-native
一个游离的指针13 小时前
ES6新特性:let、const、块级作用域
开发语言·javascript·es6
Hilaku14 小时前
删了一个没用的 console.log,生产环境直接崩了!
前端·javascript·程序员
真上帝的左手14 小时前
2. 编程语言-JavaScript
开发语言·javascript
2601_9498477514 小时前
Form-data 跨端三方库仓颉适配全流程
前端·javascript·flutter