无法在electron build中找到应用程序入口文件“./main.js”

jrcvhitl  于 2023-09-28  发布在  Electron
关注(0)|答案(4)|浏览(433)

我有一个电子应用程序,当运行electron-builder build时,我得到了这个错误。

Error: Application entry file "main.js" in the "/project/dist/release/mac/demo.app/Contents/Resources/app.asar" does not exist. Seems like a wrong configuration.

这是package.json。我已经将main设置为dist/electron.js,但我不明白为什么它一直说main.js不存在。

...
"main": "dist/electron.js",
"build": {
    "productName": "demo",
    "appId": "com.auspost.pos",
    "files": [
      "dist/",
      "node_modules/**/*",
      "package.json",
      "dist/electron.js"
    ],
    "directories": {
      "output": "dist/release"
    },
    "dmg": {
      "contents": [
        {
          "x": 130,
          "y": 220
        },
        {
          "x": 410,
          "y": 220,
          "type": "link",
          "path": "/Applications"
        }
      ]
    },
    "win": {
      "target": [
        "nsis",
        "msi"
      ],
      "icon": "./electron/assets/icons/win/app.ico"
    },
    "publish": {
      "provider": "github"
    }
  },
...
"devDepencencies": {
    "electron": "^5.0.2",
    "electron-builder": "^20.41.0",
    "electron-webpack": "^2.6.2",
}
sirbozc5

sirbozc51#

最后弄清楚,因为项目有electron-webpack依赖项,它可以作为电子构建配置的基本模板。有一些字段被定义在那里得到扩展。
解决方法是从项目依赖项中删除electron-webpack,或者使用electron-webpack约定来管理项目。

62lalag4

62lalag42#

我遇到了类似的问题:

  • “.....\dist\win-unpacked\resources\app.asar”中的应用入口文件“index.js”不存在。*

我的解决办法是
main: "main.js"
在生成的app的package.json中,so .\app\package.json。似乎没有这个电子构建器21(电子6)正在寻找一个“index.js”文件。

oxcyiej7

oxcyiej73#

如果您的主电子入口点文件名为 * electron.js *,如您所述。
然后,您首先需要在生产环境中构建应用程序:

ng build --configuration production

现在你应该在你的 dist 文件夹中有你的编译代码了。(它也可以在 dist/YourApp 文件夹中,然后你需要相应地修改路径)在这里你将有你的 * electron.js * 文件。你应该确认它在那里。
现在,在package.json中,您需要使用 main 参数指定 electron.js 文件的路径
在package.json中:

"main": "dist/electron.js"

如果文件在dist/YourApp中

"main": "dist/yourApp/electron.js"

Electron builder获取你构建的代码并将其转换为安装程序。

kxxlusnw

kxxlusnw4#

我在选择我的入口文件的生产版本时遇到了错误,该文件位于与源生产文件不同的文件夹中。
以下是让我的应用程序构建的相关配置部分:

"build": {
    "files": [
      "electron-settings.json",
      "package.json"
    ],
    "extraResources": [
      {
        "from": "../build/backend/min",
        "to": "app",
        "filter": [
          "**/*"
        ]
      },
      {
        "from": "desktop/node_modules",
        "to": "node_modules"
      }
    ],
    "mac": {
      "extraResources": [
        {
          "from": "build/osx",
          "to": "app/build/osx"
        }
      ]
    }
  }

相关问题