我是Electron的新手,我遇到的问题是尝试创建可执行文件时遇到的问题。 我已经尝试了许多示例,但总是遇到同样的问题。可执行文件已创建,但是当我尝试运行它时,则无法正常工作。
在Windows对话框中出现以下错误
[窗口标题]错误
[主要说明]主流程中发生JavaScript错误
[内容]未捕获的异常:错误:无法找到有效的应用程序 在对象。 (D:\ Projects \ angular \ my-electron-app \ packages \ my-electron-app-1.0.0-win32-ia32 \ resources \ electron.asar \ browser \ init.js:121:9) 在对象。 (D:\ Projects \ angular \ my-electron-app \ packages \ my-electron-app-1.0.0-win32-ia32 \ resources \ electron.asar \ browser \ init.js:188:3) 在Module._compile(module.js:642:30) 在Object.Module._extensions..js(module.js:653:10) 在Module.load(module.js:561:32) 在tryModuleLoad(module.js:504:12) 在Function.Module._load(module.js:496:3) 在Function.Module.runMain(module.js:683:10) 在启动时(bootstrap_node.js:196:16) 在bootstrap_node.js:622:3
[确定]
这是我的package.json:
{
"name": "my-electron-app",
"version": "1.0.0",
"scripts": {
"start": "concurrently \"ng serve\" \"npm run electron\"",
"electron": "electron ./src/electron.dev",
"ng": "ng",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e",
"package:win": "npm run build && cross-var electron-packager dist $npm_package_name-$npm_package_version --out=packages --platform=win32 --arch=all --overwrite "
...
}
我该如何解决?
答案 0 :(得分:1)
经过大量研究后,我找到了解决方案,但我不知道这是否是最好的方法,但是可行。 当我为我的应用程序执行构建时,在我的文件“ angular.json”中通过以下方式具有属性outputPath:“ outputPath”:“ dist / my-electron-app”,但是要生成我的Windows packge,我只需要“ dist”。 这样,当我执行de命令时:
"package:win": "npm run build && cross-var electron-packager dist $npm_package_name-$npm_package_version --out=packages --platform=win32 --arch=all --overwrite "
在生成“ app / my-app”文件夹之前,它将仅在“ electron \ resources \”上生成带有正确文件的文件夹“ app”
谢谢