在Android Studio 裡查看 Library Dependency
2 min readApr 13, 2017
在開發時常常會遇到要 release 的時候build不起來,有一種情況是在各個 library 裡引用了同一個類別,但是他們各相依的版本又不一樣,例如有的使用Google Play Service 8.2版,有的使用Google Play Service 9.0版,因此會產生衝突。
在這時候找出兇手就很重要了,但是在錯誤訊息中很難知道到底是哪些 Library 使用了這些重複的模組,這裡提供一個快速的方法:
在 Terminal 中輸入 ./gradlew app:dependencies
如下圖
在這裡可以看到mopub sdk 引了 com.google.android.exoplayer r1.5.6,com.android.support 23.1.1。另外 Android Studio 還可以用搜尋視窗搜尋關鍵字
找出兇手後有兩種解法:
- 在gradle dependency 裡 exclude module
androidTestCompile ('com.android.support.test.espresso:espresso-contrib:2.0') {
exclude module: 'support-annotations'
}
2. 強制整個專案都用某一個版本
configurations.all {
resolutionStrategy {
force 'com.android.support:support-annotations:23.1.1'
}
}