Android Studio 包衝突解決方法

2021-07-27 01:19:27 字數 855 閱讀 8787

在為專案加入環信時遇到了包衝突

library:easeui-sdk3.0

環信和原先的專案都使用到了glide,版本不一致,重複引發了衝突

1.如何查詢哪個jar衝突了

a.一般如果衝突了,在編譯的時候就會出現錯誤,根據出現的錯誤就可以知道那個包衝突

b.還有乙個方法比較直觀

在專案的.idea->libraries可以看到重複引用,到可能版本不同的包

會看到竟然有glide的三個版本,glide_3_6_1是環信的library中的

3.5.2和3.6.0版本是原先專案有的。

其中 3.5.2是我明確引入的,而3.6.0是我原本專案引入的乙個library裡面隱式使用的(如何找到這個隱式的使用,下面會介紹)

2.如何解決

第一步、把原先專案顯示使用的3.5.2去掉

如果和library衝突,去除本地原先有的,因為最終library要加入專案中,如果去除library裡,library會直接報錯了。

第二步、查詢隱式使用

開啟terminal

輸入:

compile 'com.jph.takephoto:takephoto_library:4.0.0'
改為

compile('com.jph.takephoto:takephoto_library:4.0.0')
去除com.jph.takephoto:takephoto_library:4.0.0裡面的glide

Android Studio 重複jar包衝突問題

android studio multiple dex files define landroid support annotation animres 匯入乙個新專案,同時用到了v4,v7都是22.1.1包,compile com.android.support support v4 22.1.0...

android studio 解決jar包衝突

多個module中引用了同樣的jar包,導致編譯報錯 錯誤 program type already present 1.第乙個module不發生改變 2.另乙個module引入jar的方式為provided,這樣改module引入的jar在編譯時候可以使用,即 不會報錯,生成的apk不會包含該ja...

Android Studio修改包名

如下圖所示 通過修改包顯示方式,我們可以更方便的修改包名。經過1中的操作,我們可以隨意修改包的某個節點 修改當前module的androidmanifest.xml檔案中的manifest節點裡的package屬性值,改為跟你的包名一致。以上兩個後續操作缺一不可,否則會造成很多奇特的bug,比如id...