Gradle解決依賴衝突

2021-08-04 02:29:30 字數 4519 閱讀 1447

問題描述

有時候專案依賴的com.android.support:support-v4的版本會遇到和其他依賴庫中com.android.support:support-v4的版本發生衝突的情況。例如我專案中使用的22.2.1版本,但是引入的最新的fresco中依賴的是23的版本,由於fragment的原始碼有變化導致之前的版本出現問題。這是由於預設情況下會優先高版本的依賴庫。這種時候需要我們去手動排除依賴。

解決方案

檢查依賴報告:

當你執行dependencies任務時,這個依賴樹會列印出來,依賴樹顯示了你build指令碼宣告的頂級依賴和它們的傳遞依賴:

+---

排除依賴:compile('com.facebook.fresco:fresco:0.10.0')

重新sync一下,再列印出依賴樹,發現結果如下:
+---

:1.1.4

這樣就發現成功排除掉了fresco中的supportv4包,轉而使用頂級依賴中的22.2.1的版本。

方法衝突 Gradle解決依賴版本衝突方法

在平時的gradle專案中,總會出現多專案依賴的版本衝突問題。下面簡單介紹依賴衝突的解決方法 使用exclude。指定group,module。其中module可以不指定。依賴hibernate,其中hibernate中依賴了org.slf4jcompile org.hibernate hibern...

解決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 ...