Превышение максимального значения по методу Multidex во время выполнения единичных тестовых примеров

У меня есть приложение, где у меня есть тесты локального блока ( тестовая папка ) и тестовые примеры блока приборов ( папка androidTest ). Прямо сейчас, если я нажму на папку androidTest и нажмите « Запустить все тесты », он выдает следующее исключение.

Error:Error converting bytecode to dex: Cause: com.android.dex.DexIndexOverflowException: field ID not in [0, 0xffff]: 65536 Error:Execution failed for task ':news-app:transformClassesWithDexForDebugAndroidTest'. > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 2 

Это исключение, очевидно, связано с тем, что он превзошел предел мультидекса. Но я включил multi-dex для сборки отладки. Я думаю, что, когда запускаются тестовые тесты, они запускаются в режиме отладки. Тогда почему это исключение происходит?

Я прикрепляю файл build.gradle

 apply plugin: 'com.android.application' apply plugin: 'io.fabric' android { compileSdkVersion 22 buildToolsVersion 22.0.1 defaultConfig { minSdkVersion 14 targetSdkVersion 22 applicationId "com.xyz" } buildTypes { debug { minifyEnabled false shrinkResources false multiDexEnabled true } release { minifyEnabled true shrinkResources true multiDexEnabled false } } lintOptions { warning 'InvalidPackage', 'GradleCompatible' } dexOptions { preDexLibraries true incremental true jumboMode = true javaMaxHeapSize "4g" } } } } 

Получил это, чтобы работать. Я поместил multiDexEnabled true в build.gradle модуля build.gradle . Но я выполнял модульные тесты в каком-то другом модуле. Оказывается, мне нужно было добавить multiDexEnabled true в этот модуль.

 android { buildTypes { debug { multiDexEnabled true } }}