如何解决Expo React Native项目执行npx expo run:ios时出现的“xcodebuild exited with error code 65”错误?
如何解决Expo React Native项目执行npx expo run:ios时出现的“xcodebuild exited with error code 65”错误?
我完全懂你花了13小时卡在这个错误上的崩溃感!从报错信息来看,核心问题是expo-modules-core包里存在重复的JavaScriptValue.swift文件——这是近期部分版本的expo-modules-core的已知bug,不是你操作的问题。试试下面这些针对性的解决方案:
方案一:锁定expo-modules-core到无bug的版本
这是最直接的修复方式,重复文件的问题已经在1.12.11版本被官方修复:
- 打开项目根目录的
package.json,添加resolutions字段强制锁定版本:"resolutions": { "expo-modules-core": "1.12.11" } - 如果你用npm管理依赖,需要先安装工具让
resolutions生效:npm install -g npm-force-resolutions - 彻底清理并重装依赖:
rm -rf node_modules package-lock.json npm install
方案二:彻底清理所有缓存与iOS构建文件
残留的缓存可能导致问题反复,试试这套更彻底的清理流程:
# 清理Expo和Metro的缓存 npx expo start -c # 进入iOS目录,完全卸载Pods并重装 cd ios rm -rf Pods Podfile.lock *.xcworkspace pod deintegrate pod install --repo-update # 拉取最新的Pod仓库,避免旧缓存干扰 cd .. # 清理Xcode的构建缓存和Derived Data xcodebuild -alltargets clean rm -rf ~/Library/Developer/Xcode/DerivedData
方案三:切换到Yarn管理依赖
npm的缓存机制偶尔会残留旧的依赖文件,切换到Yarn可能绕过这个问题:
# 移除npm的依赖文件 rm -rf node_modules package-lock.json # 安装Yarn并重装依赖 npm install -g yarn yarn install # 重复清理缓存和iOS构建步骤 npx expo start -c cd ios rm -rf Pods Podfile.lock pod install cd ..
额外排查步骤
如果以上方案都不行,用Expo官方诊断工具检查依赖兼容性:
npx expo doctor
它会自动扫描项目,指出哪些依赖存在版本冲突或不兼容问题,跟着提示修复即可。
另外,你之前尝试的删除node_modules、清理Expo缓存、重置Pods等操作都是非常标准的排查流程,已经做得很到位了!
备注:内容来源于stack exchange,提问作者fine




