我遇到一个奇怪的问题。
昨天,在将子模块中的代码从 java 更改为 kotlin 后,我收到“.dex 文件中方法引用的数量不能超过 64K”。
我的应用程序在更改代码之前运行良好,它的 build.gradle 看起来像:
defaultConfig {
...
//multiDexEnable true // spelling error has been corrected
multiDexEnabled true
...
}
dependencies {
...
compile 'com.android.support:multidex:1.0.3'
...
}
我的包结构如下:
应用程序 。
--共享模块。
--其他模块。
sharemodule 和othermodule 是我的应用程序的子模块。
我只是在sharemodule中减少了一些未使用的代码,并将其代码更改为kotlin,然后就出现了这个问题。
请帮帮我,谢谢。
感谢您的回复,我已经更正了拼写错误。该应用程序还扩展了“MultiDexApplication”
public class App extends MultiDexApplication {
我试过这个 link ,但没有用。
我还应该向模块的 build.gradle 添加“multiDexEnabled true”吗?目前我只是将它添加到我的应用程序的 build.gradle 中。
最佳答案
它是 multiDexEnabled
不是 multiDexEnable
。因此,在 gradle 文件中更改您的 defaultConfig 。
当前的:
defaultConfig {
...
multiDexEnable true
...
}
改成:
defaultConfig {
...
multiDexEnabled true
...
}
查看此链接了解更多信息:https://developer.android.com/studio/build/multidex.html#mdex-gradle
阅读此链接以了解有关 为具有超过 64K 方法的应用程序启用 Multidex 的更多信息:https://developer.android.com/studio/build/multidex.html
关于Android multiDexEnabled 不工作问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49743971/