【问题标题】:Electron-builder - path to include sqlite database in dev && productionElectron-builder - 在开发和生产中包含 sqlite 数据库的路径
【发布时间】:2018-11-14 22:12:06
【问题描述】:

我正在使用这个模板

https://github.com/SimulatedGREG/electron-vue

并在 static/db/database.sqlite 中包含一个 sqlite 文件

在我的 main.js 中有这个

const SQL = require('sqlite3').verbose();
var path = require('path');
const db = new SQL.Database(path.join(__static, '/db/database.sqlite'));

它适用于开发,但在为生产构建时,我在 devtools 中收到此消息:

SQLITE_CANTOPEN: 无法打开数据库文件

【问题讨论】:

    标签: node.js electron


    【解决方案1】:

    看起来像是另一种打包后路径变量混乱的情况。我建议调试您的路径,例如使用 fs:

    var fs = require('fs'); 
    fs.writeFileSync('mylog.txt', __dirname);
    

    参考:Error while running execFileSync in packaged Electron app

    【讨论】:

      【解决方案2】:

      抱歉,这里忘记更新了:

      https://github.com/SimulatedGREG/electron-vue/issues/630

      基本上,它应该使用 userData 文件夹以使用读/写操作.. 所以... _static 不是要写入内容的文件夹。

      【讨论】:

        猜你喜欢
        • 2012-04-15
        • 1970-01-01
        • 2017-12-22
        • 1970-01-01
        • 2019-10-21
        • 2016-01-15
        • 2013-07-14
        • 2021-06-23
        • 1970-01-01
        相关资源
        最近更新 更多