electron项目打包慢、打包报错

embedded/2024/9/24 7:38:36/

ELECTRON_MIRROR=http://npm.taobao.org/mirrors/<a class=electron/" />
项目使用了electron框架,在第一次打包或者网络条件不好的环境下进行打包时熟速度慢的出奇,甚至经常出现打包失败的情况(如上面图片的报错)。
这是因为,在electron打包的过程中,需要去官方源https://github.com/electron/electron/releases/download/下载一个ZIP包,大概70-80MB左右,这个包的下载站点是github,由于某些原因导致这一步经常出现问题。

既然github上无法下载对应资源,按照往常思路,这时候需要我们去配置国内的镜像源,比如npm常用的淘宝源。
我在网上查到了electron配置淘宝源的一种方法:在terminal中输入这条命令:npm config edit
从字面意思上来看,这是一条编辑npm配置文件的命令,输入执行这条命名会打开一个npm配置文件,在配置文件的末尾添加下面两条指令:

registry=https://registry.npm.taobao.org/
ELECTRON_MIRROR=http://npm.taobao.org/mirrors/electron/

这两条命令将下载源改为淘宝镜像,修改之后,重新执行electron打包命令。

配置淘宝镜像之后,并不能保证一定打包成功,下面提供一种一定能够成功的方法

通过阅读上图中的报错信息可以明白,electron之所以打包速度慢甚至报错,是因为在打包的时候需要去往github下载一下资源包,资源包下载失败导致electron打包失败。
既然这样,那我们在打包之前,把所需要的资源包提前下载,然后放在本地制定的位置就好了。
下载资源包的地址:点击下载
在这里插入图片描述
按照打包时遇到的问题,我依次下载了一系列文件放置到指定位置:

  • 在https://registry.npmmirror.com/binary.html?path=electron/v8.5.5/路径下,下载electron-v8.5.5-win32-x64.zipelectron-v8.5.5-win32-ia32.zip包,放在C:\Users\administrator\AppData\Local\electron\Cache路径下;
  • 在https://registry.npmmirror.com/binary.html?path=electron-builder-binaries/winCodeSign-2.6.0/路径下,下载winCodeSign-2.6.0.7z包,放在C:\Users\administrator\AppData\Local\electron-builder\Cache\winCodeSign路径下;
  • 在https://npm.taobao.org/mirrors/electron-builder-binaries/路径下,下载nsis-3.0.4.1.7z包,放在C:\Users\administrator\AppData\local\electron-builder\Cache\nsis路径下;
  • 在https://npm.taobao.org/mirrors/electron-builder-binaries/路径下,下载nsis-resources-3.4.1.7z包,放在C:\Users\administrator\AppData\local\electron-builder\Cache\nsiss路径下。

完成上面几个资源包的下载之后,再执行electron打包命令,就可以成功了。


http://www.ppmy.cn/embedded/7157.html

相关文章

密码学 | 椭圆曲线数字签名方法 ECDSA(下)

目录 10 ECDSA 算法 11 创建签名 12 验证签名 13 ECDSA 的安全性 14 随机 k 值的重要性 15 结语 ⚠️ 原文&#xff1a;Understanding How ECDSA Protects Your Data. ⚠️ 写在前面&#xff1a;本文属于搬运博客&#xff0c;自己留着学习。同时&#xff0c;经过几…

如何把npm切换成yarn管理项目

1.删掉项目中package-lock.json和依赖包 这一步手动删掉就好 2.全局安装yarn npm install -g yarn 3.可以开始执行yarn install安装依赖 1&#xff09;执行yarn init 这一步是修改npm生成的package.json文件&#xff0c;可能会遇到这个问题&#xff1a; 这个查了一下是有…

面试经典150题——H指数

面试经典150题 day11 题目来源我的题解方法一 排序从后往前遍历方法二 计数排序后缀和方法三 排序从左到右遍历 题目来源 力扣每日一题&#xff1b;题序&#xff1a;274 我的题解 方法一 排序从后往前遍历 先将数组升序排序&#xff0c;然后h从n到0开始遍历&#xff0c;计算…

装饰器的语法糖及装饰器修复技术

【一】无参装饰器语法糖 没有语法糖的装饰器方法&#xff1a; def timer(func):def inner():start time.time()func()end time.time()print(f"总耗时&#xff1a;{end - start} s") ​return inner ​ ​ def transform():time.sleep(2) ​ ​ tra timer(transf…

百度AI大会发布的APP Builder和Agent Builder有什么区别

百度在AI大会发布了三款AI工具&#xff0c;包括智能体开发工具AgentBuilder、AI原生应用开发工具AppBuilder、各种尺寸的模型定制工具ModelBuilder 有很多人就问&#xff0c;APP Builder和Agent Builder有什么不一样&#xff0c;怎么那么多builder? 你们就这么理解&#xff…

xss攻击原理与解决方法

概述 XSS攻击是Web攻击中最常见的攻击方法之一&#xff0c;它是通过对网页注入可执行代码且成功地被浏览器 执行&#xff0c;达到攻击的目的&#xff0c;形成了一次有效XSS攻击&#xff0c;一旦攻击成功&#xff0c;它可以获取用户的联系人列 表&#xff0c;然后向联系人发送虚…

Let’s Encrypt 申请免费https证书(snapd安装)

Let’s Encrypt 最近给域名安装免费的https证书 Let’s Encrypt&#xff0c;发现跟之前的安装方式不太一样&#xff0c;这里记录一下安装过程 https://certbot.eff.org/instructions?wsnginx&oscentosrhel7 https://eff-certbot.readthedocs.io/en/latest/using.html#ng…

Flink学习(七)-单词统计

前言 Flink是流批一体的框架。因此既可以处理以流的方式处理&#xff0c;也可以按批次处理。 一、代码基础格式 //1st 设置执行环境 xxxEnvironment env xxxEnvironment.getEnvironment;//2nd 设置流 DataSource xxxDSenv.xxxx();//3rd 设置转换 Xxx transformation xxxDS.…