美文网首页
引入GSYVideoPlayer,依赖冲突

引入GSYVideoPlayer,依赖冲突

作者: Sunny君907 | 来源:发表于2019-11-27 14:30 被阅读0次

包依赖冲突可以使用exclude来去掉modul引用,https://blog.csdn.net/richiezhu/article/details/80320185
``
implementation('com.shuyu:gsyVideoPlayer-java:7.0.1') {
exclude group: 'androidx.core'
}

compile('com.facebook.fresco:fresco:0.10.0') {
exclude module: 'support-v4'
}
``

可以使用./gradlew tasks --all来查找拥有的任务。 其中会有类似yourproject:dependencies ,你可以运行它来获得这样的依赖树:
./gradlew yourproject:dependencies
gsyVideoPlayer一直报V4冲突,用exclude v4后还是报错:
Program type already present: android.support.v4.os.ResultReceiver

通过上述命令./gradlew tasks --all(ubuntu 启用gradlew需要加./, 具体查找步骤可看
https://blog.csdn.net/Calvin_zhou/article/details/80880501)查看引入,发现7.0上版本引入AndroidX了,里面的androidx.core引用的V4引用 的版本和项目版本V4版本不一样,导致冲突报错,因为项目中还未引入AndroidX,因此将版本降为6.0,编译通过。

下面是git库中,大家对编译依赖所提的问题,这个留在以后备用。
引入GSYVideoPlayer后,androidx.core版本为1.1.0-alpha02,该版本有bug,ComponentActivity没有LifecycleOwner接口。
解决方法:

implementation('com.shuyu:gsyVideoPlayer-java:7.0.1') {
    exclude group: 'androidx.core'
}

androidx.core版本还是1.1.0-alpha02
百度半天才发现enforcedPlatform可以强制覆盖版本。。。

implementation enforcedPlatform('androidx.core:core:1.0.2')

如果在使用androidx库时, 又不小心间接使用了其他的老库, 可能会遇到如下的报错:
Program type already present: android.support.v4.os.ResultReceiver
Error: Program type already present: android.support.v4.app.INotificationSideChannel
Error: Program type already present: xxxxxxxx(此处可能会有各种变形)
解决方法:

可以尝试在gradle.properties中添加:
android.useAndroidX=true
android.enableJetifier=true

https://www.jianshu.com/p/0cfd76a74c60

相关文章

  • 引入GSYVideoPlayer,依赖冲突

    包依赖冲突可以使用exclude来去掉modul引用,https://blog.csdn.net/richiezh...

  • GSYVideoPlayer简单使用

    加入依赖 布局引入

  • Maven依赖冲突解决方案

    1.依赖冲突发生原因 大多数的依赖冲突发生的原因是因为maven的传递依赖会引入很多隐式的依赖,这些依赖可能会和我...

  • GSYVideoPlayer

    官网[https://github.com/CarGuo/GSYVideoPlayer] 添加依赖 修改清单列表 ...

  • 说说maven依赖冲突,依赖调解,依赖传递和依赖范围

    说maven依赖冲突之前需要先说说maven的 依赖传递。 依赖传递 当前项目引入了一个依赖,该依赖的依赖也会被引...

  • swagger的使用

    一开始运行swagger时依赖包冲突,需要手动引入guava.jar的20.0版本 Maven依赖冲突的两种解决方...

  • 解决项目中jar包冲突的终极方案

    项目中经常会碰到jar包冲突,而很多情况下冲突的包是由于其他包依赖引入的,这个时候我们无法直接分辨冲突包是哪个依赖...

  • 解决问题的文档

    一、解决build文件引入不同版本的依赖冲突:https://blog.csdn.net/stonenotes/a...

  • 解决Android依赖冲突

    问题说明: 什么情况下会产生依赖冲突?当你引入了一个包的不同的版本的情况下会产生冲突。如:你引入了 android...

  • Maven 依赖管理

    管理包依赖是 Maven 核心功能之一,下面通过如何引入 jar 包;如何解析 jar 包依赖;包冲突是如何产生;...

网友评论

      本文标题:引入GSYVideoPlayer,依赖冲突

      本文链接:https://www.haomeiwen.com/subject/jrmuqctx.html