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

相关推荐
xiaofeichaichai5 小时前
React Hooks
前端·javascript·react.js
数据知道5 小时前
C++ 层拦截:修改 Blink 引擎与 V8 绑定的底层逻辑
javascript·数据采集·指纹浏览器·风控
2301_773643626 小时前
ceph镜像
前端·javascript·ceph
To_OC6 小时前
万字解析《JS语言精粹》之第四章:函数15大核心精髓(JS灵魂核心)
前端·javascript·代码规范
宋拾壹6 小时前
同时添加多个类目
android·开发语言·javascript
IT知识分享7 小时前
从零开发在线简繁转换工具:OpenCC 实战、避坑经验与方案选型
javascript·python
川冰ICE7 小时前
JavaScript实战④|天气查询应用,调用API与异步处理
javascript·css·css3
微扬嘴角7 小时前
react篇4--setState、LazyLoad和Hooks
前端·javascript·react.js
杨梦馨7 小时前
万级数据表格卡死?Web Worker 一招搞定
前端·javascript·vue.js
用户484526255827 小时前
JavaScript 数组不是数组,是对象
javascript