java - com.android.dex.DexException : Multiple dex files define Lorg/hamcrest/Description;

标签 java android junit

我在 Stackoverflow 上搜索了此错误,找到了很多解决方案并尝试了所有解决方案,但没有一个对我有用,例如将 junit 更改为“4.8+”或将它们添加到 build.gradle 文件中:

packagingOptions {
    exclude 'META-INF/LICENSE.txt'
    exclude 'LICENSE.txt'
}


androidTestCompile ('com.squareup:fest-android:1.0.+') {
    exclude group: 'com.android.support'
}
androidTestCompile 'com.google.dexmaker:dexmaker:1.+'
androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.+'
androidTestCompile 'org.powermock:powermock-api-support:1.6.3'
androidTestCompile 'junit:junit:4.11'
androidTestCompile 'org.hamcrest:hamcrest-library:1.1'
androidTestCompile 'org.mockito:mockito-core:1.9.5'

我总是收到此错误:

Error:Error converting bytecode to dex:
Cause: com.android.dex.DexException: Multiple dex files define    Lorg/hamcrest/Description;

Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException:     com.android.ide.common.process.ProcessException:   org.gradle.process.internal.ExecException: Process 'command 'C:\Program   Files\Java\jdk1.8.0_60\bin\java.exe'' finished with non-zero exit value 2

junit 更改为“4.8+”时,它表示存在冲突,我需要将其设为 4.11。

解决办法是什么!

最佳答案

通过将其替换为:

来解决
androidTestCompile('junit:junit-dep:4.8.+')

关于java - com.android.dex.DexException : Multiple dex files define Lorg/hamcrest/Description;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36877805/

相关文章:

java - Guice 在 scala 中注入(inject)注释

java - 如何轻松地在 Java 中将 GridLayout 旋转 180 度?

spring - 在 Spring MVC 应用程序中测试转发

java - 使用 Eclipse Java : Can I run code/tests from within another JVM?

java - Spark 作业在 takeSample 上用完堆内存

java - 执行一些 Action 并根据时间重复这些 Action

android - recyclerview android中的多个 header

java - 当我按点按钮时,我希望在输入 1 中只按一次该点按钮吗?

android - xml 布局中声明的 fragment 中的错误 (ACL v4)

java - 创建 bean 时出错