RN开发搬砖经验之—处理“Duplicate class com.github.barteksc.pdfviewer“

在这里插入图片描述

问题信息

Duplicate class com.github.barteksc.pdfviewer.PDFView found in modules jetified-AndroidPdfViewer-3.1.0-beta.3-runtime (com.github.TalbotGooday:AndroidPdfViewer:3.1.0-beta.3) and jetified-android-pdf-viewer-2.8.2-runtime (com.github.barteksc:android-pdf-viewer:2.8.2)

哇哦,搞Android开发经常遇到的问题,这类问题不大,先分析好相关的依赖,然后排除冲突
在这里插入图片描述

问题定位

从出错信息上,分别看是那里引入如下两个库
1、com.github.TalbotGooday:AndroidPdfViewer
在这里插入图片描述

2、com.github.barteksc:android-pdf-viewer
在这里插入图片描述
从上面可以看出我们是一个RN第三方库,依赖一个库,跟某个我们自己的原生模块直接依赖的com.github.barteksc:android-pdf-viewer存在类的冲类!
我们先看下TalbotGooday是怎么样的存在
在这里插入图片描述
再看下com.github.barteksc

在这里插入图片描述
很明显com.github.TalbotGooday:AndroidPdfViewer大概率是从com.github.barteksc fork的代码,然后改了groupid与artifact-Id发了个maven库!!!
我们去看下他的源码库,一切正相浮出水面了,如下!

在这里插入图片描述
我这边的解决方案是,自己APP工程的原生模块先依赖回react-native-pdf引用的TalbotGooday

有趣地方

其实react-native-pdf库开发者,有提到过!在他引用TalbotGooday时
在这里插入图片描述
然后我们还可以看到相关的代码提交记录 https://github.com/wonday/react-native-pdf/commit/166090dd5960abc27ad2c485b657ee05a374d470
在这里插入图片描述

相关知识

一个RN库,一般是JS代码+Android(java/kotlin) 与IOS(OC) 的代码的集合

在这里插入图片描述

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值