iOS模拟器运行KMM项目失败:无法解析com.android.tools.build:gradle:7.4.0
解决方案
1. 对齐Gradle与Android Gradle Plugin(AGP)版本
AGP 7.4.0与Gradle 7.5存在版本兼容冲突,将AGP版本升级到适配Gradle 7.5的7.5.0,同时统一Kotlin版本避免不一致:
修改根目录build.gradle:
plugins { id("com.android.application").version("7.5.0").apply(false) id("com.android.library").version("7.5.0").apply(false) kotlin("android").version("1.7.20").apply(false) kotlin("multiplatform").version("1.7.20").apply(false) } tasks.register("clean", Delete::class) { delete(rootProject.buildDir) }
2. 强制iOS构建使用Java 11
macOS默认Java版本可能为8,需在iOS构建脚本中明确指定Java 11路径:
- 终端执行
/usr/libexec/java_home -v 11,获取Java 11安装路径(示例:/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home) - 打开Xcode的iOS项目,进入
iosApptarget的Build Phases,找到报错的Run Script阶段 - 在脚本最上方添加:
替换为你实际的Java 11路径export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
3. 全局配置Java兼容性
在根目录build.gradle添加全局配置,确保所有模块使用Java 11:
allprojects { tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { kotlinOptions { jvmTarget = "11" } } repositories { google() mavenCentral() } }
4. 清理缓存并重构
- 终端执行
./gradlew clean清理Gradle缓存 - Android Studio中执行File -> Invalidate Caches... -> Invalidate and Restart
- Xcode中执行Product -> Clean Build Folder,再重新构建iOS项目
内容的提问来源于stack exchange,提问作者Jayant Kumar
相关产品推荐
相关产品推荐

