Flutter iOS编译报错:Runner.xcodeproj未找到Runner目标仅存dev、prod如何解决
问题根因
你遇到的报错核心是自动生成的Flutter默认Podfile默认绑定的Xcode target名称为Runner,但你的项目自定义了多编译环境,将iOS原生端的target改为了dev和prod两个,两者不匹配导致找不到对应目标,对应报错信息如下:
[!] Unable to find a target named
Runnerin projectRunner.xcodeproj, did finddevandprod
修复步骤
- 打开项目
ios目录下的Podfile,找到所有写死Runner的配置段,替换为匹配你项目target的写法,可参考如下示例(把公共依赖抽离避免重复配置):
# 公共依赖配置 def shared_pods use_frameworks! use_modular_headers! flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) end # 对应dev环境target target 'dev' do shared_pods # 如有dev环境专属依赖可在此处追加 end # 对应prod环境target target 'prod' do shared_pods # 如有prod环境专属依赖可在此处追加 end
- 替换完成后关闭Xcode,依次执行以下命令清理旧缓存与依赖:
# 进入iOS目录清理原生端缓存 cd ios rm -rf Pods Podfile.lock pod deintegrate pod cache clean --all # 回到项目根目录清理Flutter缓存 cd .. flutter clean flutter pub get
- 重新安装iOS端依赖:
cd ios pod install --repo-update
- 依赖安装完成后,打开新生成的
Runner.xcworkspace文件(不要打开旧的Runner.xcodeproj),重新编译项目即可解决报错。
额外注意事项
- 你提到项目是2020年开发的,建议使用Flutter版本管理工具
fvm安装对应时期的Flutter版本匹配项目依赖,避免全局高版本带来的其他兼容问题。 - 后续上架App Store时,选择
prod对应的scheme编译归档即可,避免选错环境导致上线版本配置错误。
内容的提问来源于stack exchange,提问作者Reims
相关产品推荐
相关产品推荐

