Electron JS应用构建失败求助:sqlite3预构建二进制安装错误
解决sqlite3@5.1.7不支持N-API v36导致Electron构建失败的问题
以下是几种可行的解决思路,按推荐优先级排序:
1. 升级sqlite3到兼容N-API v36的版本
sqlite3@5.1.7的预构建二进制不支持N-API v36,升级到更高版本即可解决。执行以下命令更新依赖:
npm install sqlite3@^5.1.8 --save
(注:sqlite3从5.1.8开始添加了对N-API v36的支持,也可以直接安装最新稳定版sqlite3@latest)
更新完成后,重新执行electron-builder构建命令即可。
2. 降级Electron版本到sqlite3@5.1.7支持的范围
如果无法升级sqlite3,可将Electron版本降级到对应N-API版本≤35的版本(sqlite3@5.1.7支持的最高N-API版本为35):
- 修改
package.json中的electron版本为^23.0.0(对应N-API v35) - 执行依赖更新:
npm install
之后重新运行构建。
3. 配置源码构建环境(仅当必须保留旧版本时)
若坚持使用sqlite3@5.1.7,需配置Windows编译环境以支持源码构建:
- 安装Visual Studio Build Tools,勾选「Desktop development with C++」工作负载
- 安装Python 3.x(建议3.8-3.10版本),并确保添加到系统PATH
- 以管理员身份打开命令行,执行:
npm rebuild sqlite3 --runtime=electron --target=<你的Electron版本> --dist-url=https://electronjs.org/headers
完成后再执行electron-builder构建。
内容的提问来源于stack exchange,提问作者Darsh8
相关产品推荐
相关产品推荐

