代码之家  ›  专栏  ›  技术社区  ›  brave_warrior

带有gradle插件3.0.0的androidTest的多索引问题

  •  7
  • brave_warrior  · 技术社区  · 7 年前

    当我把我的应用程序升级到gradle plugin 3.0.0时,我开始对multidex产生问题,但只有在我运行的时候 androidTest .

    我的应用程序已经是multidex了,并且gradle插件2.3.3都有 assembleDebug assembleDebugAndroidTest 我们工作得很好。然后我刚刚将gradle插件更新为3.0.0,我开始收到以下异常:

    com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536

    我尝试了不同的选择,比如为测试定义自定义多索引运行程序,添加 androidTestCompile 'com.android.support:multidex-instrumentation:1.0.2' 依赖,但没有任何帮助。我在gradle plugin 3.0.0的发行说明中也没有发现android测试有什么变化。

    有人有类似的问题吗 雄激素试验 ?

    1 回复  |  直到 7 年前
        1
  •  5
  •   StiggyBr0    7 年前

    我认为这是一个众所周知的问题: https://issuetracker.google.com/issues/37324038

    问题是Android Gradle插件3.0.0不支持传统的multidex(min API<21),尤其是androidTest APK。我用min API制作了一种产品风味>=21同样:

    productFlavors {
        local {
            minSdkVersion 21
        }
        ci {
            minSdkVersion 17
        }
    }