写点什么

Electron 打包错误的踩坑小记

  • 2023-01-19
    广东
  • 本文字数:796 字

    阅读完需:约 3 分钟

Electron打包错误的踩坑小记

windows 墙内打包失败办法

在网络环境不好(无科学上网)的条件下,项目可能可以启动成功却无法打包,注意查看报错信息,如下图所示:



这种都是缺少相关包导致的问题,根据报错信息手动下载相应的资源,放入 C:\Users\你的用户名\AppData\Local\electron\Cache 目录下即可。


淘宝镜像:https://npm.taobao.org/mirrors/electron/

NSIS 下载:https://nsis.sourceforge.io/Download


我这里 windows 打包缺少了 nsis,下载后放入目录如下:



之后再运行打包即成功:



any-note-book Setup 0.1.0.exe 为安装包,win-unpacked 为直接打开运行的程序。


windows 下因网络问题无法打包可参考我上述的做法。Mac 我目前打包没有翻车过。

Node 版本问题打包失败

最近装 Vite4 的时候提示 Node 版本过低,手贱就直接升级了最新版 Node (原版本 14.17,确实太低了),一下干到了 18.12 的版本,接着一堆奇怪的事情就发生了,比如 Electron 打包时就报错:


.......opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],  library: 'digital envelope routines',  reason: 'unsupported',  code: 'ERR_OSSL_EVP_UNSUPPORTED'......
复制代码


还好很快在官方 Git 仓库下搜到了相关 issues:


nodejs 17: digital envelope routines::unsupported #14532


大概意思就是 Node 不讲武德,在 v17 之后删除了之前的某个什么 OpenSSL 规则啥的,所以我啪的一下,很快啊,打开了 Node.js下载官网,发现当前的稳定版本是 16.18.1



所以 Node.js 安装一定要注意版本管理,以后项目中最好也备注下当前的环境,免得过段时间就发现运行不起来了~


By the way 我的 Node 版本管理使用的是比较小众的 n,比较简单,命令行输入 n 即可选择版本切换。


执行 n 安装并切换至 16.18.1 版本:


sudo n 16.18.1
复制代码


再次打包 Electron 一切正常了,虚惊一场。


水文一篇,记录一下踩过的坑,希望对你有所帮助。

相关文章

超简单的Vue+Electron快速开发多端在线笔记

发布于: 刚刚阅读数: 5
用户头像

公众号:品味前端 2022-09-22 加入

一介前端,卖码为生。很惭愧,只希望在学习和分享的道路上能做一点微小的贡献。

评论

发布
暂无评论
Electron打包错误的踩坑小记_前端_茶无味的一天_InfoQ写作社区