系统环境:win11
软件版本:
electron: 28.0.0
electron-builder: 24.9.1
Node.js 18.x
〇、Electron-builder打包错误过程复现
在执行打包的过程汇总,会依次出现三个错误,仍然能够生成win-unpacked(无需安装的软件版笨) :
x Get winCodeSign-2.6.0.7z 下载失败
x Get nsis-resources-3.4.1.7z 下载失败
x Get nsis-3.0.4.1.7z 下载失败
// 使用的package.json 片段,注意补充其他完整
"build": {
"productName":"testABC",
"directories": {
"output": "out"
},
"nsis": {
"oneClick": false,
"allowElevation": true,
"allowToChangeInstallationDirectory": true,
"installerIcon": "./ico/logo.ico",
"uninstallerIcon": "./ico/logo.ico",
"installerHeaderIcon": "./ico/logo.ico",
"createDesktopShortcut": true,
"createStartMenuShortcut": true,
"shortcutName": "安装快捷方式的名称"
},
"win": {
"icon": "./ico/logo.ico",
"target": [
{
"target": "nsis",
"arch": [
"x64"
]
}
]
}
}
一、打包需要的三个关键文件
这三个文件在打包时,会注意从逐一github下载
使用Electron-builder由于国外网络的原因经常报错。
叛逆,其中winCodeSign.7z(5504KB)同一个大小,在Electron-builder缓存文件中疯狂重复下载解压多次。
二、解压三个文件放Electron-builder缓存中
这里我将需要的文件逐个解压后,根据目录再次打包。
看到文章需要的可以私信我邮箱。
想逐个下载官方zip,可以根据报错访问github地址,使用手机4G/5G网络。
//将该压缩包解压后,整个放置于:
%LOCALAPPDATA%\electron-builder\Cache
C:\Users\25051\AppData\Local\electron-builder\Cache
//形成目录如下例如:
C:\Users\25051\AppData\Local\electron-builder\Cache\nsis\nsis-3.0.4.1
C:\Users\25051\AppData\Local\electron-builder\Cache\nsis\nsis-resources-3.4.1\plugins
C:\Users\25051\AppData\Local\electron-builder\Cache\winCodeSign\winCodeSign-2.6.0
2.1 winCodeSign-2.6.0文件夹
2.2 nsis-3.0.4.1文件夹
2.3 nsis-resources-3.4.1\plugins文件夹
三、打包过程执行演示
注意:打包过程中会生成 nsis格式的中间产物,最后被自动替换成 .exe
四、总结
Electron-builder属于第三方打包工具,由于国外网络原因使用npm工具不太稳定,可以切换手机5G网络下载试试。
或者手动单独下载需要的模块进行替换。打包后的文件由于包含了Chrome浏览器,通常在200MB以上。
参考文献:
1.electron-builder打包过程中报错 zhuanlan.zhihu.com/p/483976136