【发布时间】:2021-07-12 06:57:33
【问题描述】:
- 操作系统:Linux 5.9.16-1-MANJARO
- 电子版本:10.1.5
- BetterSqlite 版本:7.1.2
我目前正在使用 Electron 和 BetterSqlite 编写应用程序。
我这样构建 AppImage:
npm run build && electron-builder build
这是我从代码中访问数据库的方式:
db = new Database(
path.join(__dirname, `/${dbName}`).replace("/app.asar", "")
);
我已添加要使用的数据库文件:
"extraResources": [
"public/build/Database.db"
],
但是当我打开 AppImage 时,我收到以下错误消息:
SqliteError: attempt to write a readonly database
由于 /tmp/.mountxxx 点为只读,数据库似乎无法访问。
当我在开发文件夹中打开应用程序时,不会发生此行为,因为它不是只读目录。
有没有办法使用/tmp/.mountxxx目录下的数据库?
我将如何以另一种方式访问数据库?
提前谢谢你。
【问题讨论】:
标签: sqlite electron electron-builder appimage