执行npm run ios遇error code 65报错,Xcode手动构建正常该如何解决?
解决npm run iOS构建报错code 65的方案
核对命令行与Xcode的配置一致性
- 确认命令行Xcode路径匹配:
执行xcode-select -p查看命令行关联的Xcode路径,和你手动打开的Xcode安装路径(通常是/Applications/Xcode.app/Contents/Developer)对比,不一致的话执行sudo xcode-select -s /Applications/Xcode.app/Contents/Developer切换。 - 检查指定模拟器状态:
命令行里的设备ID(1F904C3C-8CF2-4AE3-BA4C-648D385D8D1B)对应的模拟器可能未启动或异常。打开Xcode模拟器,确认该设备存在,重启模拟器后再试命令。
清理缓存与重新安装依赖
- 重置React Native缓存:
执行npm start -- --reset-cache,之后再运行npm run ios。 - 清理iOS项目缓存与Pods:
进入项目的iOS目录,执行rm -rf Pods Podfile.lock,然后重新执行pod install;同时删除Xcode的Derived Data(通过Xcode菜单File > Project Settings > Derived Data找到路径手动删除)。
排查构建配置与日志细节
- 对齐Xcode构建配置:
在Xcode中打开Soomgo.xcworkspace,查看当前Scheme(Soomgo)的Debug配置,确认签名、证书、Provisioning Profile等设置无误。命令行构建会严格遵循配置,Xcode可能自动补全部分设置,需确保两者配置一致。 - 获取详细构建日志:
执行npm run ios -- --verbose,或者直接执行带详细日志的xcodebuild命令:
从详细日志里定位具体错误(比如签名失败、依赖缺失等)。/Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -workspace Soomgo.xcworkspace -configuration Debug -scheme Soomgo -destination id=1F904C3C-8CF2-4AE3-BA4C-648D385D8D1B -verbose
检查权限与环境变量
- 确保命令行权限足够:
不要用sudo执行npm命令,确认当前用户对项目目录、Pods目录有读写权限。 - 核对环境变量:
命令行环境的变量(如PATH、HOME)可能和Xcode不同。在命令行执行printenv,对比Xcode的环境变量(Xcode中通过Product > Scheme > Edit Scheme > Run > Environment Variables查看),确保关键变量一致。
内容的提问来源于stack exchange,提问作者Henry Shin
相关产品推荐
相关产品推荐

