Flutter项目pod install遇REXML解析与xcodeproj加载错误求助
解决Flutter项目pod install时的LoadError与REXML::ParseException错误
处理LoadError(无法加载xcodeproj文件)
- 清理缓存并重置Flutter依赖
- 执行
pod cache clean --all清空CocoaPods本地缓存 - 进入项目根目录,运行
flutter clean删除Flutter构建缓存,再执行flutter pub get重新拉取依赖
- 执行
- 检查并修复xcodeproj文件
- 尝试用Xcode直接打开iOS目录下的
.xcodeproj文件,确认文件未损坏。若无法打开,备份iOS目录后执行flutter create --platforms ios .重新生成iOS项目文件
- 尝试用Xcode直接打开iOS目录下的
- 重新安装xcodeproj gem依赖
- 执行
sudo gem install xcodeproj -v 1.22.0(该版本与多数CocoaPods版本兼容性较好)
- 执行
处理REXML::ParseException(参数类型不匹配)
- 调整REXML版本至兼容版
- 先执行
gem list rexml查看当前安装的版本,若版本为3.3.x及以上,卸载高版本:sudo gem uninstall rexml -v 3.3.0(替换为实际高版本号) - 安装兼容版本:
sudo gem install rexml -v 3.2.5
- 先执行
- 检查Podfile语法
- 打开iOS目录下的Podfile,确认所有配置项语法正确,特别是涉及正则表达式的部分(比如
post_install钩子中的匹配规则),避免将字符串错误当作Regexp传入 - 删除
Podfile.lock文件后,重新执行pod install
- 打开iOS目录下的Podfile,确认所有配置项语法正确,特别是涉及正则表达式的部分(比如
额外排查步骤
- 切换至兼容的Ruby版本
- Flutter与CocoaPods对Ruby版本有兼容要求,建议使用2.7.x版本。可通过rbenv/rvm切换:
rbenv install 2.7.6 rbenv global 2.7.6
- Flutter与CocoaPods对Ruby版本有兼容要求,建议使用2.7.x版本。可通过rbenv/rvm切换:
- 重新初始化CocoaPods环境
- 进入iOS目录,依次执行
pod deintegrate、pod setup,最后运行pod install
- 进入iOS目录,依次执行
内容的提问来源于stack exchange,提问作者Raccoon
相关产品推荐
相关产品推荐

