今天遇到了一个奇怪的事情,项目在本地运行 npm start 的时候可以正常的使用,但将其使用electron-builder打包后,原先可以使用的项目却不能用了,而且也没有任何的错误提示

使用electron-builder打包时, 默认情况 下会对项目进行 asar 处理

Asar是一种简单的、广泛的存档格式,它的工作原理如下tar它不需要压缩就将所有文件连接在一起,同时具有随机访问支持

此时项目中的一些依赖就无法进行链接了,从而模块的造成了莫名失效

在package.json文件中对 build选项进行配置 时,设置 "asar":false 关闭默认的asar压缩行为

使用 electron 时调用了 node js 模块 ,在vscode调试时没有问题,打成exe包后运行报找不到module的erro。这个错误是因为 打包 时没有把 使用 的module编译,解决办法是手动在package.json文件中dependencies里添加 使用 模块 然后 打包 就可以了。 Error: Unresolved node modules: bufferutil, utf-8-validate at D:\**\ node _modules\app- builder -lib\src\util\packageDependencies.ts:112:21 From previous event: at Collector.resolveUnresolvedHoisted (D:\... 最近一直再写 node js,跟客户对接接口时给了一份dll文件,需要调用里面的方法( 使用 edge-js 模块 ),在经过长时间的奋斗后终于实现了 node js调用dll,最后 使用 electron -package打了一个build包(带源码),测试通过。 在上线的时候需要 打包 成exe安装文件,我们的项目是用的 electron - builder 打包 exe文件的, 打包 结束后程序直接报错,找不到dll文件,看了一... 使用 的是: Electron Builder 文档为:https://nklayman.github.io/vue-cli-plugin- electron - builder /guide/#installation 开发完成后 打包 ,由于内部文件引用了 electron -log, 打包 后发现提示Cannot find module,于是开始寻找问题所在: 查看了一些资料后,检查外层的package.json中的dependencies发现很全 "dependencies": { "core-js": 在 electron 做的客户端项目中实现一个功能,用js写可能有些困难,所以直接把一个网络上找的实现了该功能.exe可执行文件放进项目中,然后代码上直接执行该文件实现功能。 __dirname指向指向被执行 js 文件的绝对路径,拼接上放入的exe文件的位置。然后 使用 node 的child_process中的exeFile来进行调用。 const execFile = require('child_process') const path = require('path') const 此处用到的 打包 发布应用程序的工具是 Electron Forge 1.导入 Electron Forge到项目工程目录 npm install @ electron -forge/cli --save-dev npx electron -forge import npx @ electron -forge/cli import 2.创建一个发布版本 npm run make 3.查看发布版本 发布版本软件包在当前目录的out文件夹中 打包 发布错误解决 Making for the fo