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

Electron Builder打包报错:EBUSY资源被占用或锁定

解决Electron Builder打包时EBUSY资源锁定错误

针对Angular 14 + Electron 21环境下,electron-builder打包时出现的EBUSY资源锁定问题(涉及@ampproject/remapping文件),可尝试以下解决方案:

1. 排除不必要的.map文件或禁用Source Map生成

调试用的.map文件常是打包冲突诱因,生产环境可直接排除:

  • 修改angular.json:关闭构建时的Source Map生成
    "architect": {
      "build": {
        "options": {
          "sourceMap": false
        }
      }
    }
    
  • 修改electron-builder配置(package.json/electron-builder.json):添加精准排除规则
    "build": {
      "files": ["dist/**/*"],
      "exclude": [
        "**/*.map",
        "node_modules/@ampproject/remapping/dist/*.map"
      ]
    }
    

2. 调整Electron Builder打包策略

  • 开启asar打包:将应用资源归档为asar文件,减少文件系统操作冲突
    "build": {
      "asar": true
    }
    
  • 更换输出目录:避免原release目录被未知进程占用,比如改为./build-output
    "build": {
      "directories": {
        "output": "build-output"
      }
    }
    

3. 修复@ampproject/remapping依赖问题

  • 切换依赖版本:尝试升级/降级到无打包冲突的版本,例如:
    npm install @ampproject/remapping@2.2.0 --save
    
  • 清理重复依赖:执行命令整理冗余依赖,避免多版本冲突
    npm dedupe
    

4. 系统层面排查

  • 临时关闭杀毒软件/Windows实时保护:部分安全软件会实时扫描文件,导致打包时资源锁定
  • 以管理员权限运行打包命令:右键命令行工具选择「以管理员身份运行」后再执行打包指令
  • 检查文件占用:用Process Explorer工具搜索remapping相关文件,结束占用该文件的进程

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 23:33:17