使用location包后出现Kotlin Gradle插件版本兼容错误求助
解决Kotlin Gradle插件版本冲突问题
问题原因
项目依赖的:location模块引入了1.4.20版本的org.jetbrains.kotlin:kotlin-gradle-plugin,但当前Android Gradle插件要求Kotlin Gradle插件版本必须≥1.5.20,版本不匹配导致报错。
解决方案
1. 强制统一所有模块的Kotlin版本
在项目根目录的build.gradle(Groovy DSL)或build.gradle.kts(Kotlin DSL)中添加版本强制规则,确保所有依赖使用和项目一致的Kotlin版本:
Groovy DSL 示例(根build.gradle)
buildscript { // 填写项目当前使用的Kotlin版本,必须≥1.5.20 ext.kotlin_version = "1.5.20" dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } allprojects { configurations.all { resolutionStrategy { // 强制所有依赖使用指定版本的Kotlin库 force "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" force "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" force "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } }
Kotlin DSL 示例(根build.gradle.kts)
val kotlinVersion = "1.5.20" // 填写项目当前使用的Kotlin版本 buildscript { dependencies { classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion") } } allprojects { configurations.all { resolutionStrategy.force( "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion", "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion", "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion" ) } }
2. 手动修改:location模块的Kotlin版本(如果是自定义模块)
如果:location是你自己维护的本地模块,直接修改它的build.gradle文件,让它使用项目根目录定义的Kotlin版本,避免单独指定旧版本:
apply plugin: 'com.android.library' apply plugin: 'kotlin-android' // 移除模块内单独定义的kotlin_version,直接引用根目录的版本 dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" }
3. 清理并同步项目
执行命令清理项目:
./gradlew clean
然后点击Android Studio工具栏的「Sync Project with Gradle Files」按钮,完成依赖同步。
内容的提问来源于stack exchange,提问作者Rishav
相关产品推荐
相关产品推荐

