nklayman / vue-cli-plugin-electron-builder

Easily Build Your Vue.js App For Desktop With Electron
https://nklayman.github.io/vue-cli-plugin-electron-builder/
MIT License
4.12k stars 280 forks source link

Application entry file "background.js" in the "**app.asar" does not exist. #1906

Closed kurohoan closed 1 year ago

kurohoan commented 1 year ago

electron-builder --win -p always

If you run the above command and try to publish, you will receive the following error What is the cause?


  • electron-builder  version=22.14.13 os=10.0.19044
  • description is missed in the package.json  appPackageFile=C:\Users\XXX\test\package.json
  • author is missed in the package.json  appPackageFile=C:\Users\XXX\test\package.json     
  • writing effective config  file=dist\builder-effective-config.yaml
  • packaging       platform=win32 arch=x64 electron=13.6.9 appOutDir=dist\win-unpacked
  ⨯ Application entry file "background.js" in the "C:\Users\XXX\test\dist\win-unpacked\resources\app.asar" does not exist. Seems like a wrong configuration.  failedTask=build stackTrace=Error: Application entry file "background.js" in the "C:\Users\XXX\test\dist\win-unpacked\resources\app.asar" does not exist. Seems like a wrong configuration.
    at error (C:\Users\XXX\test\node_modules\app-builder-lib\src\asar\asarFileChecker.ts:7:12)
    at Object.checkFileInArchive (C:\Users\XXX\test\node_modules\app-builder-lib\src\asar\asarFileChecker.ts:31:11)
    at WinPackager.checkFileInPackage (C:\Users\XXX\test\node_modules\app-builder-lib\src\platformPackager.ts:501:7)
    at WinPackager.sanityCheckPackage (C:\Users\XXX\test\node_modules\app-builder-lib\src\platformPackager.ts:549:5)
    at WinPackager.doPack (C:\Users\XXX\test\node_modules\app-builder-lib\src\platformPackager.ts:310:5)
    at WinPackager.pack (C:\Users\XXX\test\node_modules\app-builder-lib\src\platformPackager.ts:136:5)
    at Packager.doBuild (C:\Users\XXX\test\node_modules\app-builder-lib\src\packager.ts:441:9)
    at Object.executeFinally (C:\Users\XXX\test\node_modules\builder-util\src\promise.ts:12:14)
    at Packager._build (C:\Users\XXX\test\node_modules\app-builder-lib\src\packager.ts:376:31)
    at Packager.build (C:\Users\XXX\test\node_modules\app-builder-lib\src\packager.ts:337:12)
    at Object.executeFinally (C:\Users\XXX\test\node_modules\builder-util\src\promise.ts:12:14)
MatthijsBurgh commented 1 year ago

The log suggests it might be a wrong configuration. So without any knowledge of your project, I can't help you.

So please provide the config and other project information.

kurohoan commented 1 year ago

Thank you. Provides a configuration file.

vue.config.js

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
  transpileDependencies: true,
  publicPath: './',
  pluginOptions: {
    electronBuilder: {
      nodeIntegration: true,
      externals: ['electron'],
      builderOptions: {
        productName: "test",
        files: [
          `dist/**/*`,
          `node_modules/**/*`,
          `package.json`,
          `background.js`
        ],
        appId: "biz.test",
        "publish": [
          {
            "provider": "github",
            "owner": "kurohoan",
            "repo": "test"
          }
        ],
        win: {
          "icon": 'src/assets/icon.png',
          "target": "nsis",
          "publish": ["github"],
        },
        mac: {
          "icon": 'src/assets/icon.png',
          "target": 'dmg',
          "publish": ["github"],
        }
      }
    }
  },
  configureWebpack: {
    devtool: 'source-map',
    externals: {
    },
    optimization: {
      minimize: false
    },
    performance: { hints: false },
  },
})

package.json

{
  "name": "test",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint",
    "electron:build": "vue-cli-service electron:build",
    "electron:serve": "vue-cli-service electron:serve",
    "postinstall": "electron-builder install-app-deps",
    "postuninstall": "electron-builder install-app-deps",
    "publish_win": "electron-builder --win -p always",
    "publish_mac": "electron-builder --mac -p always"
  },
  "main": "background.js",
  "dependencies": {
    "core-js": "^3.8.3",
    "vue": "^3.2.13"
  },
  "devDependencies": {
    "@babel/core": "^7.12.16",
    "@babel/eslint-parser": "^7.12.16",
    "@vue/cli-plugin-babel": "~5.0.0",
    "@vue/cli-plugin-eslint": "~5.0.0",
    "@vue/cli-service": "~5.0.0",
    "electron": "^13.0.0",
    "electron-devtools-installer": "^3.1.0",
    "eslint": "^7.32.0",
    "eslint-plugin-vue": "^8.0.3",
    "vue-cli-plugin-electron-builder": "~2.1.1"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/vue3-essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "@babel/eslint-parser"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not dead",
    "not ie 11"
  ]
}
MatthijsBurgh commented 1 year ago

You are using Vue3, which is not supported by this v2 releases of this project. An v3-alpha version of this project should work with Vue3. But I do not provide support for that.

kurohoan commented 1 year ago

So what can be done about it?

MatthijsBurgh commented 1 year ago

Sorry, I don't provide support the v3-alpha version of this project. My time is limited. Maybe somebody else can help you.

Another option is to use Vue2. In that case I can help you.

kurohoan commented 1 year ago

I don't understand, can I choose a version called v3+alpha as the version I can choose in the vue cli?

kurohoan commented 1 year ago

There were various misconfigurations.