Electron打包错误的踩坑小记

简介: 记录一下踩过的坑,希望对你有所帮助.

windows墙内打包失败办法

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

image.png

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

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

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

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

image.png

之后再运行打包即成功:

image.png

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

image.png

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快速开发多端在线笔记本

相关文章
|
缓存 资源调度 区块链
Electron打包图标不显示解决方案
Electron打包图标不显示解决方案
1180 0
|
2月前
|
资源调度 JavaScript 前端开发
IM跨平台技术学习(十一):环信基于Electron打包Web IM桌面端的技术实践
这次借着论证 Web IM端 SDK 是否可以在 Electron 生成的桌面端正常稳定使用,我决定把官方新推出的 webim-vue3-demo,打包到桌面端,并记录了这次验证的过程以及所遇到的问题和解决方法。
57 2
|
11天前
|
iOS开发 MacOS Python
Electron Mac 打包报 Error: Exit code: ENOENT. spawn /usr/bin/python ENOENT 解决方法
Electron Mac 打包报 Error: Exit code: ENOENT. spawn /usr/bin/python ENOENT 解决方法
|
1月前
|
JavaScript 网络安全 iOS开发
如何用 Electron 打包chatgpt-plus.top并生成mac客户端
如何用 Electron 打包chatgpt-plus.top并生成mac客户端
22 0
|
1月前
|
JavaScript 区块链
从零开始:如何用Electron将chatgpt-plus.top 打包成EXE文件
从零开始:如何用Electron将chatgpt-plus.top 打包成EXE文件
18 0
|
3月前
|
Linux Windows
教你在Linux上安装Node并用Electron打包deb和rpm包
教你在Linux上安装Node并用Electron打包deb和rpm包
171 9
|
3月前
|
前端开发 数据可视化 iOS开发
基于electron快速将任意网站打包成跨平台的桌面端软件
基于electron快速将任意网站打包成跨平台的桌面端软件
99 1
|
3月前
|
Windows
(成功踩坑)electron-builder打包过程中报错
(成功踩坑)electron-builder打包过程中报错
564 0
|
9月前
|
Web App开发 前端开发 JavaScript
用electron打包前端应用初体验
用electron打包开发桌面应用遇到的各种问题和解决办法
122 1
electron打包的exe程序,点击安装却执行了卸载的问题
在window平台下 electron打包的exe安装后,在没卸载的情况下,重新点击exe安装,会执行卸载,再点一次才是安装; 针对这个问题,我注释了打包里的一个配置,就好了,如下
331 0