我有一个用电子填充的NodeJS应用程序来创建x64可执行文件。这个打包的应用程序在大多数PC上都能正常工作,但我不知道是什么原因,在一些PC中,应用程序随机失败。
错误堆栈是:
"Error: ENOENT: no such file or directory, open 'C:\app\app-desktop-win32-x64\resources\electron.asar\browser\api\dialog.js'
at Object.openSync (fs.js:453:3)
at Object.func [as openSync] (electron/js2c/asar.js:138:31)
at Object.readFileSync (fs.js:353:35)
at Object.fs.readFileSync (electron/js2c/asar.js:580:40)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:850:22)
at Module.load (internal/modules/cjs/loader.js:701:32)
at tryModuleLoad (internal/modules/cjs/loader.js:633:12)
at Function.Module._load (internal/modules/cjs/loader.js:625:3)
at Module.require (internal/modules/cjs/loader.js:739:19)
at require (internal/modules/cjs/helpers.js:14:16)"有人和这个错误做过斗争吗?有什么想法或建议吗?
在某些PC中,错误会消失,将包含应用程序的文件夹重命名,但在一台PC中,错误将无限期地存在。
发布于 2020-05-21 06:49:20
最后,我找到了如何做到这一点。
在打包和分发我的应用程序之前,我会手动提取asar文件,问题就解决了。虽然有点乏味,但是唯一的解决方案对所有PC都是有效的。
https://stackoverflow.com/questions/61727136
复制相似问题