Program type already present: XXXXX

这种表示有重复的类导致Build Conflict
解决方法:
1.查找:
To run the task, proceed as follows:

选择View > Tool Windows > Gradle (单击 工具窗口栏中的“ Gradle).
展开AppName > Tasks> android并双击androidDependencies。Gradle执行任务后,应打开“ 运行”窗口以显示输出
在这里插入图片描述
在这里插入图片描述
找到重复的类。
如果您无法轻松识别重复的依赖关系,请尝试使用Android Studio的UI搜索包含重复类的依赖项,如下所示:
在这里插入图片描述
2.解决:
修复重复的类错误,下面方法视情况选择
删除多余的引用依赖包(2种情况)

  • 若直接引用A,B包, 如果A包引用了B包,删除B包
  • 若A库上具有本地依赖项和远程依赖项,删除其中一个依赖

统一依赖版本
Group 和Module的区别
Module
具有独立功能的模块
Module中可能还包含有Module
implementation分号之后的部分
Group
Module的集合
implementation分号之前的部分
如下例子:

  • configurations方式

    一般build.gradle中的所有support依赖应为统一版本

 implementation 'com.android.support:appcompat-v7:27.1.1'

dependencies{}完成后做相关配置

configurations {
   all*.exclude group: 'com.android.support', module: 'support-v13'
}

假如android.arch.core:runtime:1.1.0@aar
android.arch.core:common:1.1.1@jar
有同样的Function类,可以在dependencies{}中
configurations{
all*.exclude group: ‘android.arch.core’
}

  • exclude方式:
implementation('com.android.support:customtabs:27.1.0', {
    exclude group: 'com.android.support', module: 'design'
})

它们的意思是在Group中,排除Module

参考:
管理依赖的版本(传递(transitive)\排除(exclude)
Android Studio更新导致Program type already present: android.support.design.widget.CoordinatorLayout$1
Android开发之——依赖冲突Program type already present
Android Studio 编译: Program type already present: XXX 解决方案

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值