不懂Swift如何快速解决Flutter项目Xcode编译Swift模块不兼容错误
这个报错的核心原因是你项目依赖的Publitio第三方库的预编译二进制文件由Swift 5.1.2版本编译生成,和你当前Xcode内置的Swift 5.3.2编译器版本不兼容。最快可按如下步骤解决:
- 第一步:打开Flutter项目根目录下
ios文件夹中的Podfile文件 - 第二步:在
Podfile末尾添加以下配置,强制Publitio库从源码编译,避免使用版本不匹配的预编译二进制:
post_install do |installer| installer.pods_project.targets.each do |target| next unless target.name == 'Publitio' target.build_configurations.each do |config| config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'NO' end end end
- 第三步:保存文件后,在终端进入项目的
ios目录,依次执行以下命令:- 清理旧的Publitio库缓存:
rm -rf ~/Library/Caches/CocoaPods/Pods/Release/Publitio - 重置Pod依赖:
pod deintegrate && pod install
- 清理旧的Publitio库缓存:
- 第四步:回到Xcode,按下
Command + Shift + K清理构建缓存后重新编译项目即可。
如果上述操作后仍报错,你可以直接在Podfile中指定升级Publitio库到支持Swift 5.3+的最新版本,再重新执行pod install即可。
内容的提问来源于stack exchange,提问作者ERKAN KILIÇ
相关产品推荐
相关产品推荐

