Gradle資源衝突

2021-07-29 12:45:33 字數 438 閱讀 3514

使用android studio開發常見問題就是multiple dex files define ***xx。

之前eclipse使用ant編譯,ant使用的是包含的方式進行編譯,不同的模組有相同的資源也可以編譯通過。而gradle則要更加嚴格,採用合併的方式進行編譯,所有的檔案、**都會被merge到一起,相同的資源名就會發生衝突。

常見解決方法:

1、使用@aar關鍵字關閉依賴傳遞

compile 'com.***.***xx:******:1.0.0-snapshot@aar'

這種方式libs目錄下的jar檔案是不受影響的

2、使用exclude module排除乙個庫中引用的其他庫

compile ('com.***.yyy:aaa:1.1.1')

Gradle解決依賴衝突

問題描述 有時候專案依賴的com.android.support support v4的版本會遇到和其他依賴庫中com.android.support support v4的版本發生衝突的情況。例如我專案中使用的22.2.1版本,但是引入的最新的fresco中依賴的是23的版本,由於fragment...

解決Gradle中jar衝突

plain view plain copy 1.直接在configuration中排除 plain view plain copy configurations plain view plain copy dependencies 排除多個jar可以使用多個exclude 3.當然,我們也可以強制使...

解決Gradle中jar衝突

如果有兩個依賴引用了相同jar包的不同版本時,預設情況下gradle會採用最新版本的jar包,此時可以通過排除選項來排除。首先,看一下依賴乙個庫時的格式,name也就是module dependencies 4.強制使用某個統一版本的依賴,我們也可以全域性配置 configurations.all ...