使用版本目录libs.version.toml时遇Android应用插件解析异常求助
问题解决:AGP插件版本冲突报错
错误原因
这个报错的核心是:com.android.application插件已经通过其他途径(项目根脚本、其他模块)被添加到类路径中,但版本未知,导致和你在libs.versions.toml中定义的7.4.2版本无法做兼容性校验。
解决步骤
检查根目录构建脚本
打开项目根目录的build.gradle(或build.gradle.kts),查看是否存在以下两种情况:plugins块中直接引入了com.android.application插件buildscript的dependencies里通过classpath添加了AGP依赖(比如classpath 'com.android.tools.build:gradle:x.x.x')
如果有,要么移除该引用,要么统一使用libs.versions.toml中的版本定义,比如改为:
buildscript { dependencies { classpath libs.plugins.androidApplication.get().pluginId } }检查其他模块配置
排查所有非:app模块的build.gradle,确认没有误引入com.android.application插件(库模块应该使用com.android.library),如果有,替换为正确的库插件。修正
:app模块的插件引用
既然com.android.application仅在:app模块使用,不需要设置apply false(该参数用于当前脚本引入插件但不应用,供其他模块调用),直接改为默认应用:plugins { alias(libs.plugins.androidApplication) alias(libs.plugins.kotlinAndroid) id('kotlin-kapt') id('androidx.navigation.safeargs') alias(libs.plugins.kotlin.serialization) }清理Gradle缓存
执行以下命令刷新依赖并清理缓存,避免缓存导致的版本残留:# macOS/Linux ./gradlew clean build --refresh-dependencies # Windows gradlew clean build --refresh-dependencies
内容的提问来源于stack exchange,提问作者Martin
相关产品推荐
相关产品推荐

