最近想尝试一下使用electron,但是光安装和打包发布的尝试就调整了一天

以下包括

  1. electron-forge环境变量设置
  2. electron本体安装时候的网络问题
  3. electron-forge安装时候的报错和缓慢问题

electron源在国外还真是困扰

本文写于2022/08/25,请保证您的npm和node版本尽量是新的

安装时卡顿或缓慢问题

较通用解决方案:设置环境变量

设置npm electron默认安装路径的环境变量
npm config set ELECTRON_MIRROR http://npmmirror.com/mirrors/electron/
能大概率解决electron安装缓慢或卡顿

删除变量npm config delete ELECTRON_MIRROR

查看npm 变量 npm config ls

使用淘宝源时卡住

electron 本体卡住


主要卡在reify:lodash:timing reify:audit

这是由于npm换下载源为国内源导致的问题,在作者网络寻找解决时也发现有其他人遇见此问题,且尤其是淘宝源在作者的机器上绝对会卡顿

除设置环境变量,将npm换回原来的下载源解决外

npm install cnpm -g安装cnpm后使用cnpm安装electron也可解决


npm install –save-dev @electron-forge/cli卡住


主要卡在reify:rxjs: timing reifyNode:node_modules/lodash
同样出现在使用淘宝源时候,和上面的本体一样可以通过cnpm和设置变量解决


npx electron-forge import报错


基本报错都有"electron-squirrel-startup"这个包安装失败
报错信息多种多样,包括但不限于

  1. 网络重置
  2. 超时
  3. lockfile的版本错误
    第三个会告诉你本地和依赖的lockfile版本对不上,但其实本地已经是2版本了

由于是npx安装,cnpm用不上,npm国内源基本报错,npm官方源等半小时都不一定安装完

由于electron-forge import的作用是修改package.json的开发依赖并且帮你安装上依赖

手动安装即可解决这个问题,请一定先设置环境变量,否则将会导致国内网络环境打包安装非常缓慢
将下面内容复制进package.json文件

{"name": "problem-test","version": "1.0.0","author": {"name": "canals"},"description": "demo-electron","main": "main.js","scripts": {"start": "electron-forge start","package": "electron-forge package","make": "electron-forge make","e-start": "electron ."},"devDependencies": {"@electron-forge/cli": "^6.0.0-beta.65","@electron-forge/maker-deb": "^6.0.0-beta.65","@electron-forge/maker-rpm": "^6.0.0-beta.65","@electron-forge/maker-squirrel": "^6.0.0-beta.65","@electron-forge/maker-zip": "^6.0.0-beta.65","electron": "^20.1.0"},"dependencies": {"electron-squirrel-startup": "^1.0.0"},"config": {"forge": {"packagerConfig": {},"makers": [{"name": "@electron-forge/maker-squirrel","config": {"name": "electron_demo"}},{"name": "@electron-forge/maker-zip","platforms": ["darwin"]},{"name": "@electron-forge/maker-deb","config": {}},{"name": "@electron-forge/maker-rpm","config": {}}]}}}

“devDependencies”的版本后缀都是一样的

可以安装最新版本的@electron-forge/cli,把版本号复制到下面几个

然后npm install或cnpm install,把依赖装上

一定设置环境变量
npm run make即可成功快速安装打包依赖并且打包成功