运行Android应用时出现重复类错误:annotations版本冲突
解决Android依赖重复类问题(annotations 12.0 vs 23.0.0)
1. 定位重复依赖的引入来源
打开你导出的gradleDuplicates.log文件,搜索以下关键词:
com.intellij:annotations:12.0org.jetbrains:annotations:23.0.0
找到这两个依赖分别被哪个第三方库间接引入,日志里会显示类似层级关系:
+--- some.library:xyz:1.0.0 | \--- com.intellij:annotations:12.0
或
+--- another.library:abc:2.0.0 | \--- org.jetbrains:annotations:23.0.0
2. 排除重复依赖
根据定位结果,在模块的build.gradle(通常是app模块)中处理重复依赖:
方式1:针对性排除旧版本
找到引入com.intellij:annotations:12.0的第三方库,在依赖声明后添加排除规则:
implementation 'some.library:xyz:1.0.0' { exclude group: 'com.intellij', module: 'annotations' }
方式2:强制统一使用新版本
如果不想逐个排查,可在根项目的build.gradle中添加全局规则,强制所有依赖使用23.0.0版本:
allprojects { configurations.all { resolutionStrategy { force 'org.jetbrains:annotations:23.0.0' } } }
3. 验证修复
执行清理并重新构建命令,确认报错消失:
./gradlew clean build
内容的提问来源于stack exchange,提问作者Edward Muturi
相关产品推荐
相关产品推荐

