如何解决Android Studio中的‘Duplicate class’错误?
解决Android Studio中'Duplicate class'错误的实用方案
先定位重复类的来源
仔细看错误日志的完整内容,找到具体重复的类名,日志里会明确标注这个类来自哪两个依赖(比如两个不同的库或模块),比如:Duplicate class com.example.xxx.ClassA found in modules jetified-lib1-1.0.jar (com.example:lib1:1.0) and jetified-lib2-2.0.jar (com.example:lib2:2.0)重点锁定这两个冲突的依赖。
排除重复的依赖项
如果是第三方库间接引入了重复模块,在模块级build.gradle里用exclude语法移除重复部分。比如发现lib2自带了lib1,而你又单独引入了lib1,可以这么写:implementation('com.example:lib2:2.0') { exclude group: 'com.example', module: 'lib1' }要是同一个库的不同版本冲突,就在项目级
build.gradle里强制统一版本:configurations.all { resolutionStrategy.force 'com.example:lib1:1.0' }检查本地模块的重复类
如果你有多个module,排查是不是不同module里存在完全同名的类(比如两个module都有com.example.utils.Utils)。这种情况要么重命名其中一个类,要么把重复类移到共用的基础module里。手动清理构建目录
除了Android Studio的缓存,手动删掉项目根目录的.gradle文件夹,以及各个module下的build文件夹,之后点击工具栏的「Sync Project with Gradle Files」重新同步。检查依赖的scope设置
确认有没有同一个库同时用implementation和compileOnly(或其他scope)重复引入的情况,编译时也会触发重复类错误,确保每个库只在一个scope下声明。
内容的提问来源于stack exchange,提问作者Relax Time
相关产品推荐
相关产品推荐

