最近打开项目,发现高德有新版本更新,果断更新。哈哈哈哈。然而结果好像并没有这么简单。要是世界上什么事情这么简单就好了。年轻人。还是太年轻了啊。
然后更新完最新的依赖
/*高德地图远程依赖*/
implementation 'com.amap.api:navi-3dmap:9.5.0_3dmap9.5.0'
implementation 'com.amap.api:search:9.5.0'
然后就报错了。具体就四个要点,中间一样的省略一万个字。
Execution failed for task ':app:checkDevDebugDuplicateClasses'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
> Duplicate class com.amap.api.fence.DistrictItem found in modules jetified-AMapTrack_1.4.1_AMapLocation_6.0.0_20220222 (AMapTrack_1.4.1_AMapLocation_6.0.0_20220222.jar) and jetified-navi-3dmap-9.5.0_3dmap9.5.0 (com.amap.api:navi-3dmap:9.5.0_3dmap9.5.0)
XXXXXXXX
Duplicate class com.amap.api.location.AMapLocation found in modules jetified-AMapTrack_1.4.1_AMapLocation_6.0.0_20220222 (AMapTrack_1.4.1_AMapLocation_6.0.0_20220222.jar) and jetified-navi-3dmap-9.5.0_3dmap9.5.0 (com.amap.api:navi-3dmap:9.5.0_3dmap9.5.0)
XXXXXXXX
Duplicate class com.amap.api.services.busline.BusLineItem found in modules jetified-navi-3dmap-9.5.0_3dmap9.5.0 (com.amap.api:navi-3dmap:9.5.0_3dmap9.5.0) and jetified-search-9.5.0 (com.amap.api:search:9.5.0)
XXXXXXXX
1.A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
2.Duplicate class com.amap.api.fence.XXX
3.Duplicate class com.amap.api.location.XXX
4.Duplicate class com.amap.api.services.XXX
具体去搜一下,大概都会是什么AndroidX包异常了。但是其实也告诉我们问题了。包冲突了。尴尬啊!之前也是这么依赖的。为什么就不行了。那就看看底层吧。
也是好神奇,为什么这个导航的把定位,搜索的都给覆盖了。离了个大谱啊!这官方文档也不写好一点。坑人啊。希望官方的能走点心吧,完全是坑人。
最后就是注释掉 /*implementation 'com.amap.api:search:9.5.0'*/ 因为我有依赖猎鹰的包,没办法,只能去删除多余的文件了步骤如下:
1.把依赖的jar包把XXX.jar 改成XXX.zip
2.打开XXX.zip文件,把多余的文件删掉
3.把依赖的jar包把XXX.zip改成XXX.jar
放进去项目,运行试试,暂时是解决冲突的bug了,后续有待跟踪。下面是查阅的别人的博客,有需要可以去瞅瞅。但愿遇到的人少走弯路。哈哈哈
androidx和v4包资源冲突解决方法_陈福旭的博客-CSDN博客_androidx v4