节点 JS:"electron.asar" 文件的电子问题
Node JS: Electron problem with "electron.asar" file
我有一个用 Electron 打包的 NodeJS 应用程序来创建一个 Windows x64 可执行文件。
打包后的应用程序在大多数电脑上运行良好,但我不知道为什么,在某些电脑上,应用程序随机失败。
错误堆栈为:
"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 中,错误会一直存在。
终于,我找到了如何做到这一点。
我在打包和分发我的应用程序之前手动提取了 asar 文件,问题消失了。
有点乏味,但这是对所有 PC 都有效的独特解决方案。
我有一个用 Electron 打包的 NodeJS 应用程序来创建一个 Windows x64 可执行文件。 打包后的应用程序在大多数电脑上运行良好,但我不知道为什么,在某些电脑上,应用程序随机失败。
错误堆栈为:
"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 中,错误会一直存在。
终于,我找到了如何做到这一点。
我在打包和分发我的应用程序之前手动提取了 asar 文件,问题消失了。 有点乏味,但这是对所有 PC 都有效的独特解决方案。