Skip to content

electron 打包与错误汇总

常见问题

  1. 项目目录不允许有中文,否则不能下载打包依赖,导致无法打包
  2. 打包软件时不能出现本软件运行状态,需要从任务管理器关闭,否则将会打包失败
  3. 打包asar加密忽略配置
javascript
"asarUnpack": [
  "**/node_modules/iconv-lite/**/*",
  "**/node_modules/ip/**/*",
  "**/node_modules/ws/**/*",
  "**/node_modules/koa/**/*",
  "**/node_modules/koa-router/**/*",
  "**/node_modules/koa-static/**/*",
  "**/node_modules/path/**/*",
  "**/web/**/*"
],
"extraResources": [
  {
    "from": "./web",
    "to": "app.asar.unpacked/web"
  }
],
  1. 打包取消asar加密
javascript
"build": { "asar": false }
  1. 打包文件添加配置
javascript
"build": {
    "files": [
      "web/**",
      "main.js",
      "preload.js",
      "config.js"
    ]
}
  1. 报错信息 was compiled against a different Node.js version using

原因:node版本与electron版本不一致导致报错

javascript
// electron端查看版本
console.log("node:", process.versions.node)
console.log("electron:", process.versions.electron)
console.log("modules:", process.versions.modules)

// npm rebuild --runtime=electron --target=15.3.0 --disturl=https://atom.io/download/atom-shell --abi=98 
// 15.3.0是你的electron版本,98是modules
// node 16.5.0 electron 15.3.0 modules 98(此版本程序解决成功)
  1. electron-builder打包命令报错
javascript
Error: C:\Users\Administrator\AppData\Local\electron-builder\Cache\nsis\nsis-

3.0.3.2\Bin\makensis.exe exited with code 1Output:

解决:electron项目路径不能有中文

  1. 打包支持中文路径

解决:打开 C:\Users\Administrator\AppData\Roaming\npm\node_modules\electron-builder\node_modules\app-builder-lib\out\targets\nsis/NsisTarget.js 文件,在 executeMakensis 方法中加入我们所需的参数 args.push(“-INPUTCHARSET”, “UTF8”);

  1. 错误 Fatal error: Unable to commit changes

原因:电脑开着杀毒软件或者C盘存储空间不足的情况下导致

解决方法:把所有的杀毒软件退出,清理一下磁盘。再重新打包。

  1. 程序闪退,打不开

错误 gpu_data_manager_impl_private.cc(231)] SetSecurityInfo returned 5

解决:卸载360

打包软件时出现的文件缺失

javascript
cannot resolve https://xxxxx.org/mirrors/electron/15.3.4/electron-v15.3.4-win32-x64.zip: status code 404
  • 打包时下载 electron-v.xxxx.zip 文件失败

解决方案:

  1. 直接在源仓库的文件库下载对应版本和打包平台的文件。
  2. 下载完成后放在 C:\Users\用户名\AppData\Local\electron\Cache 这个目录下

打包时下载 winCodeSign-v.xxx.7z 文件失败

  1. 下载地址:winCodeSign-2.5.0
  2. 下载完解压放到 C:\Users\用户名\AppData\Local\electron-builder\Cache\winCodeSign 目录下

打包时下载 nsis-v.xxx.7z 文件失败

  1. 下载地址:nsis-3.0.4.1
  2. 下载完解压放到 C:\Users\用户名\AppData\Local\electron-builder\Cache\nsis

打包时下载 nsis-resources-v.xxx.7z 文件失败

  1. 下载地址:nsis-resources-3.4.1

  2. 下载完解压放到 C:\Users\用户名\AppData\Local\electron-builder\Cache\nsis\nsis-resources-3.4.1

TIP

下载的文件如果需要其他版本,直接修改链接中的版本号