我遇到一个奇怪的问题。
昨天,在将子模块中的代码从 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 中。
Android multiDexEnabled 不工作问题-LMLPHP

最佳答案

它是 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/

10-11 22:16
查看更多