快速解决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打包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • element中使用formdata进行上传文件的方法

    element中使用formdata进行上传文件的方法

    本文主要介绍了elementUI中使用formdata进行上传文件的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • vue项目打包后请求地址错误/打包后跨域操作

    vue项目打包后请求地址错误/打包后跨域操作

    这篇文章主要介绍了vue项目打包后请求地址错误/打包后跨域操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • VScode中配置ESlint+Prettier详细步骤(附图文介绍)

    VScode中配置ESlint+Prettier详细步骤(附图文介绍)

    这篇文章主要介绍了VScode中配置ESlint+Prettier详细步骤,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-12-12
  • 手摸手教你实现Vue3 Reactivity

    手摸手教你实现Vue3 Reactivity

    本文主要介绍了手摸手教你实现Vue3 Reactivity,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Vue3纯前端实现Vue路由权限的方法详解

    Vue3纯前端实现Vue路由权限的方法详解

    这篇文章主要给大家介绍了关于Vue3纯前端实现Vue路由权限的相关资料,文中通过实例代码介绍的非常详细,对大家学习或者使用Vue3具有一定的参考学习价值,需要的朋友可以参考下
    2022-05-05
  • vue通过定时器实现垂直滚动公告

    vue通过定时器实现垂直滚动公告

    这篇文章主要为大家详细介绍了vue通过定时器实现垂直滚动公告,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • 在Vuex使用dispatch和commit来调用mutations的区别详解

    在Vuex使用dispatch和commit来调用mutations的区别详解

    今天小编就为大家分享一篇在Vuex使用dispatch和commit来调用mutations的区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • vue2之简易的pc端短信验证码的问题及处理方法

    vue2之简易的pc端短信验证码的问题及处理方法

    这篇文章主要介绍了vue2之简易的pc端短信验证码的问题,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • Element Plus 表格中的复制功能使用实战指南

    Element Plus 表格中的复制功能使用实战指南

    本文介绍了ElementPlus表格的cell-dblclick事件的使用方法,总结了当前项目的优势,如兼容性好、特殊列处理、用户反馈和错误处理等,感兴趣的朋友跟随小编一起看看吧
    2026-02-02
  • Vue插槽原理与用法详解

    Vue插槽原理与用法详解

    这篇文章主要介绍了Vue插槽原理与用法,结合实例形式详细分析了vue.js插槽内容、具名插槽、作用域插槽等相关原理与使用方法,需要的朋友可以参考下
    2019-03-03

最新评论