首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >增量、preDexLibraries、jumboMode、dexOptions内部是什么意思?

增量、preDexLibraries、jumboMode、dexOptions内部是什么意思?
EN

Stack Overflow用户
提问于 2015-10-01 23:04:03
回答 1查看 17.3K关注 0票数 27

在build.gradle中,我们可以添加参数

android {
    dexOptions {
        incremental 
        preDexLibraries
        jumboMode 
        javaMaxHeapSize
    }
}

但是文档太少了

http://google.github.io/android-gradle-dsl/current/com.android.build.gradle.internal.dsl.DexOptions.html#com.android.build.gradle.internal.dsl.DexOptions

布尔增量

是否开启dx的增量模式。这有很多限制,可能不起作用。请谨慎使用。

布尔jumboMode

在dx中启用巨型模式(--force- jumbo )。

布尔preDexLibraries

是否对dex库进行前处理。这可以改进增量构建,但干净的构建可能会更慢。

1)增量中有哪些限制?

2)什么是巨型模式?

3)什么是pre-dex库?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-08 20:48:09

首先让我们看看dex文件是什么。在纯java中,当你编译java代码时,它会被编译成一个.class文件,而在android中,你的java代码会被编译成.dex文件。(两者都是字节码,但不同)

incremental:这意味着Gradle将使用以前的dex文件,并将新的更改附加到它们(而不是每次都重新构建它们)。

你的第一个Q的答案:例如,其中一个限制是你不能将它与multidex*一起使用(尽管这个限制已经解决了-对于sdk版本,21+可以通过只重建受影响的dex文件来为multidex apk进行增量构建)

-note:你不需要再担心这个限制了,因为从Gradle version2.1.0开始,默认情况下增量选项是真的

multidex:这个选项意味着将java代码编译到多个dex文件中,除非您的代码方法数量超过了单个dex文件的最大限制(64k方法),否则您不需要这个选项。

jumboMode (你的第二个Q的答案):dex文件中的字符串计数也有一个限制,启用这个选项会扩展dex文件中的字符串计数(这个选项是从Gradle2.1.0开始的,所以你也不用担心这个问题)

preDexLibraries (,你的第三个Q的答案):它从库中构建dex文件,所以它可以在增量构建中使用(不是每次都为库构建dex文件)。因此,在干净构建时使用此项目会使一切变得更慢。

票数 26
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32890868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档