【问题标题】:Unable to import mockito imports using testCompile in gradle无法在 gradle 中使用 testCompile 导入 mockito 导入
【发布时间】:2018-01-03 17:02:52
【问题描述】:

我正在尝试在我的项目中导入 mockito,但这是不可能的。我花了很多时间尝试...我正在使用 Android Studio 3.0

我在 gradle 依赖项中有这个:

testCompile  'junit:junit:4.12'
testCompile  "org.mockito:mockito-core:2.11.0"
testCompile  "org.powermock:powermock-module-junit4:1.6.2"
testCompile  "org.powermock:powermock-api-mockito:1.6.2"

但我无法在我的测试课程中导入任何关于 mockito 的内容。

如果我将 testCompile 更改为

androidTestCompile  'junit:junit:4.12'
androidTestCompile  "org.mockito:mockito-core:2.11.0"
androidTestCompile  "org.powermock:powermock-module-junit4:1.6.2"
androidTestCompile  "org.powermock:powermock-api-mockito:1.6.2"

我可以全部导入,但是当我尝试运行测试时,logcat 中出现此错误:

Error:Execution failed for task ':myproject:transformDexArchiveWithExternalLibsDexMergerForMyprojectDebugAndroidTest'.
> java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex

一些帮助将不胜感激!

【问题讨论】:

  • 你可能已经达到了 dex 限制。
  • 我让你添加 androidTestCompile 'com.linkedin.dexmaker:dexmaker-mockito:2.2.0' 有了这个,我可以看到导入
  • 并将 powermock 更新到 1.7.3 版本

标签: android mockito powermock powermockito


【解决方案1】:

看来您使用的 powermock 和 mockito 版本不兼容。 基于compatibility tablepowermock-1.6.2 兼容Mockito 1.10.x。

以 mockito 2.8.9 和 powermock 1.7.3 为例。

不确定是否是这种情况,但以后在运行测试时无论如何都会遇到问题。

【讨论】:

    【解决方案2】:

    去这个网站...http://gradleplease.appspot.com/ 并搜索你想要的图书馆

    并且必须在 build.gradle(Project:xxx) 中添加 mavan

    allprojects {
    repositories {
        google()
        jcenter()
        maven { url "https://jitpack.io" }
    }
    

    }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-13
      • 1970-01-01
      • 2020-11-28
      • 2017-05-29
      • 1970-01-01
      相关资源
      最近更新 更多