Electron Builder 中不存在应用程序入口文件

Mik*_*e M 7 node.js electron electron-builder

我有一个最小的电子应用程序,我正在尝试构建它(它运行良好)。我的 package.json 是

  "main": "main.js",
  "scripts": {
    "start": "electron -r babel-register .",
    "package": "build --dir",
    "postinstall": "electron-builder install-app-deps"
  },
  // dependencies
  "build": {
    "appId": "com.karmadust.mancuspianconvert",
    "files": [
      "node_modules/**/*"
    ],
    "directories": {
      "buildResources": "assets"
    }
  }
Run Code Online (Sandbox Code Playgroud)

当我运行时,npm run package我得到:

Application entry file "main.js" in the "[path-to-project]/dist/mac/myapp.app/Contents/Resources/app.asar" does not exist. Seems like a wrong configuration.
Run Code Online (Sandbox Code Playgroud)

Mar*_*tao 4

您需要首先构建主电子,您可以使用electron-webpack它:

包.json

"scripts": {
    "compile": "electron-webpack",
    "build": "yarn compile && electron-builder" // Compile main first
  },
"electronWebpack": {
    "commonSourceDirectory": "common",
    "main": {
      "sourceDirectory": "main" // The main folder
    },
    "renderer": {
      "sourceDirectory": null // Ignore any renderer build
    },
 }
Run Code Online (Sandbox Code Playgroud)

它将main在您的 dist 中创建一个包含main.js内置文件夹的文件夹。

您可以查看Electron webpack文档以获取更多信息。