电子:电子建设者配置

时间:2017-04-10 13:23:23

标签: javascript linux windows electron

有人可以向我解释electron-builder配置的工作原理吗?我无法理解95%的事情。以下所有内容 API 都有点令人困惑。有 0 实际上应该如何将某些内容添加到build对象的示例。我的意思是,看一个简单的开发请求:我想创建windows和linux build。我复制/粘贴了一些代码,然后我发现了填充:

{
  "name": "Test",
  "version": "1.0.0",
  "author": "Test Ltd.",
  "description": "Test",
  "devDependencies": {
      ...
  },
  "build": {
    "appId": "Test",
    "extraFiles": {
      "from": "./build",
      "to": "./dist"
    },
    "win": {
      "icon" : "build/images/icon.ico",
      "target": ["portable"]
    },
    "linux": {
      "icon" : "build/images/icon.png",
      "target": ["pacman"]
    }
  },
  "scripts": {
    "pack": "build --dir",
    "dist": "build"
  }
}
  1. 它只创建x64 windows包。在dist文件夹中有一个名为win-unpacked的文件夹和一个.exe文件。 linux包不存在。为什么?
  2. 如何指定拱门(x64,x32)?
  3. 如何使用 API 下面的内容?我只了解WinBuildOptions的工作方式 - 我应该在package.json的“构建”对象中写“获胜”。
  4. 什么是Squirrel Events?我红了this,但无法从纯文本中理解它。
  5. 有关“如何使用Electron / electron-builder创建Windows安装程序?”的视频指南的任何建议。或者“如何为Linux创建软件包并在线上传,以便Linux用户可以使用Electron / electron-builder下载它?”我找不到任何。

2 个答案:

答案 0 :(得分:2)

查看electron-builder的github仓库中的api选项,它使用windows构建选项和linux构建选项来工作。每个项目的描述都布置在配置的属性/属性旁边。

这是一个人为的例子,但至少应该给出它应该如何寻找windows和linux的结构:

    "build":{
        "appid":"yourid",
        "asar": true
        "linux":{
            "category": "...",
            "target": "..."
        },
        "win":{
            "target": "...",
            "certificateFile":"...",
            "publisherName": "..."
        }

    }

您可以查看multi platform构建页面。具体来说,要使用某个arch,请使用命令行标志。来自文档:

  

默认构建当前平台和当前arch。使用CLI标志   --mac, - win, - linux指定平台。并且--ia32, - x64指定arch。

通常,这被指定为npm脚本,并在运行electon-build命令时以这种方式传递。在建立平台和可能缺少信息方面,请参阅此引用:

  

不要期望您可以在一个平台上为所有平台构建应用程序。

根据您使用的特定操作系统开发Linux和Windows版本似乎需要额外的设置和配置。我会看一下该页面在依赖性方面的含义。

答案 1 :(得分:-1)

要回答部分问题,当您不在要打包的平台上时,无法打包应用程序,例如,如果您在窗口,电子建设者将根据您使用的计算机打包Windows应用程序{ {3}}

对于linux目标,请参阅configuration of win targets。如果你想为linux构建,建议似乎是在docker容器内构建。