1. 程式人生 > >com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/annotation/ColorRes.class

com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/annotation/ColorRes.class

導致 .class div src jar 技術 cnblogs 沖突 信息

技術分享

保存信息如上:

我在添加一個支持庫的時候遇的問題,這個庫com.yanzhenjie:album:1.0.5

這是由於v4包重復導致的,在網上我也找過多種解決方案

用了這種,方式 configurations {
all*.exclude group: ‘com.android.support‘, module: ‘support-v4‘
all*.exclude group: ‘com.android.support‘, module: ‘support-annotations‘
}   和這種搞的 compile (‘com.yanzhenjie:album:1.0.5‘){
exclude module: ‘support-v4‘
exclude module: ‘support-annotations‘
} 這兩種方式都無效 原因可能是支持庫中使用的較高的版本編譯的,貌似高版本裏面直接引用了v4包,所以不需要在引用 而我的另一個引用支持module裏面有v4jar包,刪除是肯定不行的,會報錯找不到文件,但是不刪還有沖突, 於是我糾結了好久沒解決,偶然的一天,突然解決了,解決方案如下: 1.刪除依賴支持module中的v4包這時候報錯 2.找到報錯文件,在報錯位置alt+enter(提示功能),此時提示框出來,如下,這時候提示框第一個就提示讓add 一個libary支持xxx這是什麽吊,先不管,點了再說 技術分享

3.點了以後咦,突然好了,這是怎麽回事?(稍後再講) 技術分享

4.在運行Fragement也找不到 技術分享

5.同理導入

技術分享

6.在運行好了

7.這究竟是做了什麽了?原來是工具在module下的build.gradle下加入了下面兩個,第一次導入的就是第一個,第二次就是第二個嘍

技術分享

伸手粘貼黨專享福利:

compile ‘com.android.support:support-core-ui:25.3.1‘
compile ‘com.android.support:support-fragment:25.3.1‘

8.其實這個錯誤是多個v4重復導致的,高版本中有的包含有了v4,所以會出現沖突現象,不過這個問題還挺不好搞

本篇文章屬於原創,真心很累打了這麽多字,給點個贊吧

com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/annotation/ColorRes.class