Xcode打包React Native应用时遇Call retries were exceeded错误求助
解决React Native Xcode打包Archive时"Call retries were exceeded"错误
可行解决方案汇总:
1. 彻底清理项目缓存与依赖
- 删除冗余文件:
rm -rf node_modules Pods rm package-lock.json yarn.lock Podfile.lock - 重新安装依赖:
npm install # 或 yarn install cd ios && pod install && cd .. - 清理Xcode缓存:打开Xcode执行
Product > Clean Build Folder(快捷键Cmd+Shift+K),再手动删除~/Library/Developer/Xcode/DerivedData目录下的所有文件
2. 彻底配置Node内存限制
之前的临时设置可能未生效,试试两种方式:
- 终端临时生效:执行以下命令后再打开Xcode打包
export NODE_OPTIONS="--max-old-space-size=8192" - 永久生效:编辑
~/.zshrc(或~/.bash_profile,根据你的终端shell选择),添加上述export语句,再执行source ~/.zshrc使配置生效
3. 调整TypeScript配置与版本
- 检查
package.json中typescript版本,确保和当前React Native版本兼容(比如RN 0.70+建议搭配TS 4.8及以上版本) - 修改
tsconfig.json减少编译压力:{ "compilerOptions": { "skipLibCheck": true } }
4. 关闭Xcode并行编译
- 打开Xcode项目Target,进入
Build Settings,搜索Parallelize Build并设置为No - 搜索
Build Active Architecture Only,将Debug模式设为Yes,Release模式设为No
5. 修复jest-worker依赖
不要直接删除node_modules中的jest-worker(RN或TypeScript内部可能依赖它),重新安装该包:
npm install jest-worker --save-dev # 或 yarn add jest-worker --dev
6. 降级Node.js版本
如果当前使用Node.js v20及以上版本,尝试降级到v18 LTS版本(部分RN版本对高Node兼容性较差),可通过nvm快速切换:
nvm install 18 nvm use 18
内容的提问来源于stack exchange,提问作者Amu
相关产品推荐
相关产品推荐

