AndroidX适配,ListenableFuture问题

项目引入了com.google.guava的包,转化为androidx后运行时候出现错误:
Error: Program type already present: com.google.common.util.concurrent.ListenableFuture

查类ListenableFuture(com.google.common.util.concurrent.ListenableFuture),发现有两个包中都有这文件,一个包是com.google.guava:listenablefuture:1.0,一个是com.google.guava:guava:20

用gradlew -q app:dependencies 查看包依赖,发现有两个地方有
+--- androidx.appcompat:appcompat:1.1.0-alpha01
| +--- androidx.annotation:annotation:1.0.0 -> 1.0.1
| +--- androidx.core:core:1.1.0-alpha01 -> 1.1.0-alpha02
| | +--- com.google.guava:listenablefuture:1.0
| | +--- androidx.annotation:annotation:1.0.1
| | +--- androidx.collection:collection:1.0.0 -> 1.1.0-alpha01
| | | --- androidx.annotation:annotation:1.0.0 -> 1.0.1
| | +--- androidx.lifecycle:lifecycle-runtime:2.0.0
| | | +--- androidx.lifecycle:lifecycle-common:2.0.0
| | | | --- androidx.annotation:annotation:1.0.0 -> 1.0.1
| | | --- androidx.arch.core:core-common:2.0.0
| | | --- androidx.annotation:annotation:1.0.0 -> 1.0.1
| | +--- androidx.versionedparcelable:versionedparcelable:1.1.0-alpha01
| | | +--- androidx.annotation:annotation:1.0.0 -> 1.0.1
| | | --- androidx.collection:collection:1.0.0 -> 1.1.0-alpha01 (*)
| | --- androidx.concurrent:concurrent-futures:1.0.0-alpha02
| | +--- com.google.guava:listenablefuture:1.0
| | --- androidx.annotation:annotation:1.0.0-rc01 -> 1.0.1

最后在配置文件中加入配置,全局过滤掉这个
configurations {
//这里要排除到这个包,这个包会与 com.google.guava 冲突,导致编译不过
all*.exclude group: 'com.google.guava', module: 'listenablefuture'
}

之后编译运行ok

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容