如何通过Electron-builder使用资产文件夹构建电子应用程序

时间:2019-05-18 11:33:18

标签: electron electron-builder

我已经用electronic-builder建立了一个应用程序。开发区域media文件夹中有一个视频。但是,当我构建应用程序时,我发现C:// Programs中资源文件夹中的视频文件夹已替换为asar文件。

我希望视频在制作中保存在media文件夹中。我该怎么办

2 个答案:

答案 0 :(得分:1)

您可能想尝试asar: false。您也可以使用extraResources指令在asar文件之外添加资源:

"extraResources": [
    {
        "from": "../media",
        "to": "media",
        "filter": [
            "**/*",
            "!*.mp3",
        ]
    }
],

"asar": false,

答案 1 :(得分:0)

接受的答案对我不起作用...起​​作用的是以与files配置所指定的格式相同的格式指定要访问其内部版本的目录。

electron-builder.json:

{
...
"extraResources": [
  "src/assets/my-assets/*"
],
...
}

构建后,您将在资源下与asar文件(... / app / resources / src / assets / my-assets)位于同一位置的文件夹。无需指定asar: false

在主要过程中,如果使用__dirname,它将以app.asar结尾。可以使用以下资源访问资产:

// Removing 8 characters to remove "app.asar"
let strippedPath = __dirname.substring(0, __dirname.length - 8);
let execPath = '\"' + strippedPath + 'src\\assets\\my-assets' + '\"';

现在execPath可以附加到资产文件夹中需要执行的任何内容之后。