AndroidStudio的transformDexArchiveWithExternalLibsDexMergerForDebug報錯解決方案

錯誤排查記錄。android

今天在gradle更新了一個引入包的版本號,而後引起了下面的血案。 api

報錯信息:app

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'. gradle

 根據報錯信息的提示,咱們能夠判斷出是應該是引入了兩個衝突的一樣的內容,即這裏的TensorFlowInferenceInterface,咱們搜索這裏這個類,看看是哪裏在用。spa

搜索後,咱們發現有兩個地方在用,一個是org.tensorflow.** 另外一個是 com.taobao.**3d

通常狀況下,咱們去gradle裏找到而後排除其中一個便可,可是若是找不到的話,咱們能夠經過gradle的命令看到包的依賴關係。 code

下載 gradle(若是沒有的話,去這裏:https://gradle.org/next-steps/?version=4.10.2&format=bin)orm

執行blog

gradle app:dependencies

 須要在工程的根目錄下:ci

能夠在結果中找到:

 能夠看到com.taobao.android.alinn**這個是由於我引入了**.alinnkit 這個包致使的。也就是我更新版本後的包,因此我這裏將 

'com.taobao.android', module:'alinntfsupport' 排除掉,寫法以下: 
dependencies {
    compile('com.taobao.android:alinnkit:2.0.0.24-android-SNAPSHOT'){
        exclude group:'com.taobao.android', module:'alinntfsupport'
    }
    compile('org.tensorflow:tensorflow-android:1.6.0@aar')
}

 寫完後,構建,經過~

相關文章
相關標籤/搜索