前言
我们开发过程中,难免会遇到这样的情况:在github等网站上找到了几个不错的项目,高高兴兴的compile过来,然后:
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dx.util.DexException: Multiple dex files define
……………………
…………
- 1
- 2
- 3
- 4
正文
遇到这种问题,我们看错误信息只能知道有jar包冲突,是哪个jar包冲突了,然而,这个jar包在哪,我们却不得而知,所以最笨的方法就是一个个去掉jar包之后编译,看哪个jar包加上去不行了,那么就找到问题所在。
不过Android Studio的Gradle里面提供了一个Gradle Project,可以查看所有包的依赖,像这样:
debugUnitTest
No dependencies
release
\--- XXX:XXXLib:unspecified
+--- com.android.support:support-v4:23.4.0
| \--- LOCAL: internal_impl-23.4.0.jar
+--- com.android.support:appcompat-v7:23.4.0
| +--- com.android.support:animated-vector-drawable:23.4.0
| | \--- com.android.support:support-vector-drawable:23.4.0
| | \--- com.android.support:support-v4:23.4.0
| | \--- LOCAL: internal_impl-23.4.0.jar
| +--- com.android.support:support-v4:23.4.0
| | \--- LOCAL: internal_impl-23.4.0.jar
| \--- com.android.support:support-vector-drawable:23.4.0
| \--- com.android.support:support-v4:23.4.0
| \--- LOCAL: internal_impl-23.4.0.jar
+--- org.simple:androideventbus:1.0.5.1
+--- com.zhy:autolayout:1.4.5
| \--- com.android.support:appcompat-v7:23.4.0
| +--- com.android.support:animated-vector-drawable:23.4.0
| | \--- com.android.support:support-vector-drawable:23.4.0
| | \--- com.android.support:support-v4:23.4.0
| | \--- LOCAL: internal_impl-23.4.0.jar
| +--- com.android.support:support-v4:23.4.0
| | \--- LOCAL: internal_impl-23.4.0.jar
| \--- com.android.support:support-vector-drawable:23.4.0
| \--- com.android.support:support-v4:23.4.0
| \--- LOCAL: internal_impl-23.4.0.jar
+--- com.jakewharton:butterknife:8.5.1
| \--- com.android.support:support-compat:25.1.0
\--- COOY:PullToRefreshLib:unspecified
releaseUnitTest
No dependencies
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
这样,哪个包里有什么就能看的一清二楚&……
而获得这些仅需要2步……
ok,废话不多说,首先点开界面右边的Gradle,找到项目名–Task–Android–androidDependencies,右键选择Run…………
第二步,查看……
ok,就这样完成了。