如何修复Compose Multiplatform项目在Xcode中的构建失败问题
排查与修复步骤:
校验Xcode中Kotlin框架路径
打开Xcode项目的Build Phases→Link Binary With Libraries,确认shared(或你的共享模块名)框架的引用路径是否正确。若路径失效,删除原有框架,通过Add Other重新选择共享模块的构建产物(通常位于../shared/build/bin/ios[Simulator/Device]/[架构]/releaseFramework/目录)。重新生成Xcode项目文件
在项目根目录执行以下命令,先清理再生成Xcode配置:./gradlew iosSimulatorClean ./gradlew generateXcodeProject之后重新导入生成的Xcode项目尝试构建。
匹配Kotlin与Xcode版本兼容性
确认使用的Compose Multiplatform/Kotlin Multiplatform版本与Xcode版本兼容(例如Kotlin 1.9+需Xcode 14.3及以上),版本不匹配会导致底层编译逻辑冲突。添加Xcode构建前置脚本
在Xcode的Build Phases中新增Run Script阶段(放在Link Binary With Libraries之前),执行Gradle预构建命令,确保Kotlin框架始终是最新产物:cd "$SRCROOT/.." ./gradlew :shared:iosSimulatorFramework(注:若为真机构建,将
iosSimulatorFramework替换为iosFramework)清理全量构建缓存
执行以下命令彻底清理Gradle与Xcode缓存:./gradlew clean rm -rf ~/.gradle/caches rm -rf ~/Library/Developer/Xcode/DerivedData之后重新启动Android Studio和Xcode,依次构建共享模块与iOS项目。
检查签名配置
若错误涉及签名权限,在Xcode的Signing & Capabilities中确认开发者账号、签名证书与调试配置匹配,确保iOS调试签名有效。
内容的提问来源于stack exchange,提问作者Ahmad Dudayef

