You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Electron Packager加--asar参数在M1 Mac打包Linux应用无报错终止

解决方案

该问题由M1芯片的架构适配缺陷、非LTS版本Node的稳定性问题以及旧版electron-packager的已知bug共同导致,可按以下步骤依次排查解决:

  • 升级electron-packager版本
    当前使用的15.4.0版本electron-packager对M1芯片跨架构打包Linux x64的适配存在已知缺陷,asar压缩环节的处理逻辑会在arm64环境下意外终止。执行以下命令升级到最新稳定版即可解决大部分同类问题:
    npm install electron-packager@latest --save-dev
    升级完成后重新执行原有打包命令验证。
  • 更换为LTS版本Node
    Node v15是奇数非长期支持版本,对M1芯片的原生适配不完善,运行跨架构构建逻辑时稳定性差。建议切换到v16.x或v18.x的LTS版本Node,这两个版本对arm64架构的支持成熟,同时兼容当前使用的electron 15.x版本。
  • 调整asar打包配置
    如果升级依赖后依然存在问题,可以在打包命令中显式配置asar的排除规则,避免跨架构二进制文件导致压缩逻辑卡住:
    将原有命令中的--asar参数替换为--asar.unpackDir=node_modules/.bin,完整命令如下:
    electron-packager . myapp --asar.unpackDir=node_modules/.bin --platform=linux --arch=x64 --icon=src/assets/images/logos/logo-72x72.png --prune=true --out=release-builds
  • 使用Rosetta 2运行终端
    右键点击终端应用,选择「显示简介」,勾选「使用Rosetta打开」,重启终端后执行打包命令,模拟x86架构运行环境,完全规避arm64架构下的兼容问题。

内容的提问来源于stack exchange,提问作者sajalsuraj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 08:54:06