快速解决electron-builder打包时下载依赖慢的问题

 更新时间:2024年02月04日 10:20:14   作者:梓miao出没  
使用 Electron-builder 打包,有时会在下载Electron、nsis、winCodeSign的过程中 Timeout 导致打包失败,本文给大家分享快速解决electron-builder打包时下载依赖慢的问题,感兴趣的朋友一起看看吧

在使用 Electron-builder 打包时,有时会卡在 downloading 半天不动,导致打包失败。

问题描述

使用 Electron-builder 打包,有时会在下载Electron、nsis、winCodeSign的过程中 Timeout 导致打包失败(鉴于国内的网络情况)。

  • electron-builder  version=22.5.1 os=10.0.18362
  • loaded configuration  file=package.json ("build" field)
  • writing effective config  file=dist\builder-effective-config.yaml
  • packaging       platform=win32 arch=x64 electron=8.2.3 appOutDir=dist\win-unpacked
  • default Electron icon is used  reason=application icon is not set
  • downloading     url=https://github.com/electron-userland/electron-builder-binaries/releases/download/winCodeSign-2.6.0/winCodeSign-2.6.0.7z size=5.6 MB parts=1

日志中可见, downloading 步骤会依此下载工具链,Timeout 即在于此。

解决方法

1.解决 Electron 下载慢
项目根目录新建.npmrc文件,加入如下环境变量:

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

此项将 Electron 镜像源设置为淘宝镜像源。

2.解决 nsis、winCodeSign 下载慢
照猫画虎,在.npmrc中同样设置ELECTRON_BUILDER_BINARIES_MIRROR镜像源地址,cnpm 同样提供了对应的镜像源:

ELECTRON_BUILDER_BINARIES_MIRROR=http://npm.taobao.org/mirrors/electron-builder-binaries/

这样即可高速下载所需的工具链文件。

选读
在写这篇文章草稿时,淘宝ELECTRON_BUILDER_BINARIES_MIRROR镜像源是一直挂掉的,如果你用它,会发现 nsis、winCodeSign 压根拉不下来。

2020 年 4 月 25 日,我和一个兄弟评论了对应的 issues#1539 ,而后有个大兄弟把这问题修了。

所以,当时采取的措施是手动下载文件,并将其放置于 Electron-builder 文件夹,这也有必要了解一下。

Nsis 存放位置
C:\Users\admin\AppData\Local\electron-builder\Cache\winCodeSign

winCodeSign 存放位置

C:\Users\admin\AppData\Local\electron-builder\Cache\winCodeSign

将对应版本的文件手动下载后解压至这两个文件夹即可。

到此这篇关于快速解决electron-builder打包时下载依赖慢的问题的文章就介绍到这了,更多相关electron-builder打包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue中 $forceUpdate的使用解析

    vue中 $forceUpdate的使用解析

    这篇文章主要介绍了vue中 $forceUpdate的使用解析,该方案是比较好的一种方式,比如说我们尝试直接给某个​​object​​增加一个属性,发现页面上没有效果;直接将length变成0来清空数组,下文详细资料需要的小伙伴可以参考一下
    2022-04-04
  • VUE 实现动态给对象增加属性,并触发视图更新操作示例

    VUE 实现动态给对象增加属性,并触发视图更新操作示例

    这篇文章主要介绍了VUE 实现动态给对象增加属性,并触发视图更新操作,涉及vue.js对象属性动态操作及视图更新相关实现技巧,需要的朋友可以参考下
    2019-11-11
  • Vue2.x中的父组件传递数据至子组件的方法

    Vue2.x中的父组件传递数据至子组件的方法

    这篇文章主要介绍了Vue2.x中的父组件数据传递至子组件的方法,需要的朋友可以参考下
    2017-05-05
  • Vue组件之间的数据共享详解

    Vue组件之间的数据共享详解

    这篇文章主要为大家介绍了Vue组件之间的数据共享,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-11-11
  • Vue3中使用qrcode库实现二维码生成

    Vue3中使用qrcode库实现二维码生成

    Vue3中实现二维码生成需要使用第三方库来处理生成二维码的逻辑,常用的库有 qrcode和 vue-qrcode,本文主要介绍了Vue3中使用qrcode库实现二维码生成,感兴趣的可以了解一下
    2023-12-12
  • vue图片转base64格式的方法示例

    vue图片转base64格式的方法示例

    对于前后端分离的项目,为了统一响应参数,需要将图片转换成base64的格式,下面这篇文章主要给大家介绍了关于vue图片转base64格式的相关资料,需要的朋友可以参考下
    2022-12-12
  • Vue中侦听器的基本用法示例

    Vue中侦听器的基本用法示例

    随着Vue的使用越来越多,对Vue的其他知识点也开始逐渐多了解一点,这次做页面上的计算,用了Watch侦听器,这篇文章主要给大家介绍了关于Vue中侦听器基本用法的相关资料,需要的朋友可以参考下
    2021-08-08
  • 完美解决axios跨域请求出错的问题

    完美解决axios跨域请求出错的问题

    下面小编就为大家分享一篇完美解决axios跨域请求出错的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • Vue安装Element Plus全过程

    Vue安装Element Plus全过程

    这篇文章主要介绍了Vue安装Element Plus全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • 基于vue+canvas的excel-like组件实例详解

    基于vue+canvas的excel-like组件实例详解

    a vue component,基于vue的表格组件,主要解决大数据量的表格渲染性能问题,使用canvas绘制表格,同时支持类似excel的批量选中,复制黏贴删除,实时编辑等功能.这篇文章主要介绍了基于vue+canvas的excel-like组件,需要的朋友可以参考下
    2017-11-11

最新评论