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

Mac端Cordova build ios报错:无法复制acorn至自身子目录求解决

解决Cordova构建iOS时Acorn路径复制冲突的问题

我之前帮同事解决过几乎一模一样的问题,这个错误本质是路径循环导致的复制冲突——Cordova的构建脚本尝试把Acorn的可执行文件复制到它自己所在的目录下,自然就触发了报错。试试下面这几个方案,按顺序来大概率能解决:

  • 清理依赖并重新安装
    首先排除依赖安装混乱的问题:

    1. 删除项目根目录的node_modules文件夹:rm -rf node_modules
    2. 强制清除npm缓存:npm cache clean --force
    3. 重新安装所有依赖:npm install
      完成后再尝试执行cordova build ios
  • 调整Acorn版本
    部分旧版本的Acorn目录结构可能和Cordova的构建逻辑不兼容,试试升级或降级到稳定版本:

    • 升级到最新稳定版:npm install acorn@latest
    • 或者指定一个经过验证的稳定版本(比如8.x系列):npm install acorn@8.10.0
  • 检查并修改Cordova的复制配置
    如果上面两步没用,可能是项目的复制规则出了问题:

    1. 打开项目根目录的config.xml,检查是否有<copy-files>或<resource-file>标签错误地指向了../acorn/bin/acorn路径,如果有,移除或调整这个规则。
    2. 也可以查看platforms/ios/cordova/lib/copy-assets.js(或类似的复制脚本文件),看看脚本的路径匹配规则是否把Acorn的bin目录纳入了复制范围,修改规则排除这个路径即可。
  • 重新添加iOS平台
    要是前面的方法都不奏效,可能是iOS平台的构建缓存或配置文件损坏了:

    1. 先移除iOS平台:cordova platform remove ios
    2. 重新添加iOS平台:cordova platform add ios
    3. 再次执行构建命令:cordova build ios

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 12:37:53