Файл записи приложения не существует в 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"
    }
  }

Когда я бегу 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.

person Mike M    schedule 20.02.2018    source источник


Ответы (2)


Сначала вам нужно построить основной электрон, для этого вы можете использовать electron-webpack:

package.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
    },
 }

Он создаст папку main внутри вашего dist со встроенным main.js.

Дополнительную информацию можно найти в документации по Electron webpack.

person Marcelo Formentão    schedule 03.04.2018

@Marcelo прав, говоря о необходимости компилировать и создавать исходные файлы. Но я бы предостерегал вас от electron-webpack, потому что стал ненадежным

Ознакомьтесь с этими шаблонами, чтобы узнать о некоторых других вариантах, многие из которых используют electron-builder под капотом

person Ty Hitzeman    schedule 20.07.2021