乐趣区

关于javascript:Electron升级构建适配M1芯片Mac指南

写在结尾

  • 因为最新的 Electron 曾经反对了 M1 芯片,arm架构下的Mac
  • 在开发桌面软件时候不可避免的须要打包自测,那么在 M1 芯片上的 Mac 打包适配本人的软件也是应该的
  • 那么当初制作 Electron 桌面软件,应该是适配 linux,windows,mac os(x86 架构,arm架构)四个零碎环境

为什么写这个文章

  • 我应用的一些软件,居然当初还不反对 arm 架构的 Mac,更新速度太慢了,明明都是依赖 Electron, 其实大部分软件降级适配老本不高, 桌面软件开发者们连忙降级吧

背景

  • Electron不反对 xp 零碎,只有 node.js 降级后基本上它就会公布降级版本(如果你要兼容 xp 零碎请应用 nw.js 等)
  • 目前 node.js 最新版本 15.x 曾经适配了 arm 架构下的 Mac,electron11.0.0版本也曾经反对在 arm 架构下的 Mac 运行了, 我须要在本人电脑上自测本人开发的软件兼容性,所以这次须要降级 Electron 版本和各种插件等

开始

  • 首先降级 Electron 到 11.0.0 版本
yarn add electron@11.0.0 --save
  • 降级 electron-builder22.9.1版本以上
yarn add electron-builder@^22.9.1 -D
  • 批改 package.jsonbuild字段中 Mac 的值:
“mac”: {
      "target": {
        "target": "dmg",
        "arch": [
          "arm64",
          "x64"
        ]
      }
}
  • 构建,始终报错。反正各种奇奇怪怪的谬误,前面我发现是我配置有点问题,最终在这里找到了
https://github.com/electron-userland/electron-builder/issues/5392
  • 批改配置为
"mac": {"target" : { "target": "dir", "arch": "arm64"}
},
  • 同时批改打包构建 arm 架构下命令为:
electron-builder build --arm64

最终

  • 降级适配胜利

  • 打包的是 dmg, 实际上能够间接关上

  • 一个很简短却很实用的教程,如果你的利用刚好要降级兼容 M1,那么连忙降级吧!
  • 如果感觉写得不错,那么点个 在看 / 赞
退出移动版