multiDexEnabled不起作用



我有一个相当大的android项目。该项目仍在编译,但当我试图编译测试时,我遇到了一个错误:

Execution failed for task ':app:dexDebugTest'.
trouble writing output: Too many method references: 70561; max is 65536.
You may try using --multi-dex option.

好的,我找到了multiDexEnabled属性并添加了

multiDexEnabled true

在中

defaultConfig

我还让我的应用程序扩展

MultiDexApplication

但它没有改变任何东西,我仍然得到

Execution failed for task ':logic:dexDebugTest'.
trouble writing output: Too many method references: 70561; max is 65536.
You may try using --multi-dex option.

它甚至明确地向我展示了没有多索引参数的dx命令

sdk/build-tools/21.1.1/dx --dex --output /build/intermediates/dex/test/debug --input-list=build/intermediates/tmp/dex/test/debug/libraryList.txt

尝试将其添加到您的构建.gradle 中

android{
...
afterEvaluate {
        tasks.matching {
            it.name.startsWith('dex')
        }.each { dx ->
            if (dx.additionalParameters == null) {
                dx.additionalParameters = ['--multi-dex']
            } else {
                dx.additionalParameters += '--multi-dex'
            }
        }
    }
...
}

最新更新