簡體   English   中英

Android數據綁定依賴項與支持庫沖突

[英]Android data binding dependency conflict with the support library

我正在嘗試在我的Android項目中設置數據綁定,如下所示:

dataBinding {
    enabled = true
}

但是,當我添加支持庫依賴項時,lint會抱怨:

所有com.android.support庫必須使用完全相同的版本規范(混合版本可能導致運行時崩潰)。 發現版本25.1.0,21.0.3。 示例包括'com.android.support:animated-vector-drawable:25.1.0'和'com.android.support:support-v4:21.0.3'

當我運行./gradlew app:dependencies ,我得到以下內容:

...
+--- com.android.support:appcompat-v7:25.1.0
|    +--- com.android.support:support-annotations:25.1.0
|    +--- com.android.support:support-v4:25.1.0
|    |    +--- com.android.support:support-compat:25.1.0 (*)
|    |    +--- com.android.support:support-media-compat:25.1.0
|    |    |    +--- com.android.support:support-annotations:25.1.0
|    |    |    \--- com.android.support:support-compat:25.1.0 (*)
|    |    +--- com.android.support:support-core-utils:25.1.0
|    |    |    +--- com.android.support:support-annotations:25.1.0
|    |    |    \--- com.android.support:support-compat:25.1.0 (*)
|    |    +--- com.android.support:support-core-ui:25.1.0 (*)
|    |    \--- com.android.support:support-fragment:25.1.0
|    |         +--- com.android.support:support-compat:25.1.0 (*)
|    |         +--- com.android.support:support-media-compat:25.1.0 (*)
|    |         +--- com.android.support:support-core-ui:25.1.0 (*)
|    |         \--- com.android.support:support-core-utils:25.1.0 (*)
|    +--- com.android.support:support-vector-drawable:25.1.0
|    |    +--- com.android.support:support-annotations:25.1.0
|    |    \--- com.android.support:support-compat:25.1.0 (*)
|    \--- com.android.support:animated-vector-drawable:25.1.0
|         \--- com.android.support:support-vector-drawable:25.1.0 (*)
+--- com.android.databinding:library:1.3.1
|    +--- com.android.support:support-v4:21.0.3 -> 25.1.0 (*)
|    \--- com.android.databinding:baseLibrary:2.3.0-dev -> 2.3.0-beta1
...

關於如何在不禁用的情況下停止抱怨鏈接的任何想法?

為此記錄了一個缺陷,從而產生了更有用的錯誤消息: https//issuetracker.google.com/issues/37128971

解決方案是在build.gradle中為support-v4添加對您正在使用的支持庫版本的顯式依賴,因此如果您使用的是支持庫25.1.0:

compile 'com.android.support:support-v4:25.1.0'

正如@gopalanrc建議的那樣,從Android Gradle Plugin 3.0.0開始,您通常應該使用以下代碼:

implementation 'com.android.support:support-v4:25.1.0'

如果您使用的是gradle 3.0或更高版本,請按以下方式添加。

implementation 'com.android.support:support-v4:<the_version>'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM