kotlin的装配速度已经过优化,以节省时间, 996
我对kotlin的翻译速度一直不满意,但我可以应付。我最近开始了一个新项目,很多同事都来自Java。他们实在受不了,所以优化翻译速度就变得非常重要。
优化前后对比
优化前我们的完整翻译时间是2分21秒
当然,耗时的任务都在运行任务中:分配的任务你看。如上,主要是capt绑定的汇编和kotlin代码的汇编,最终转化为ClassedWithXXX。
优化后全翻译时间31s
优化后增量翻译时间15s
优化步骤:
1。优化gradle配置:
在项目根目录创建文件
//启用gradle并行编译,启用daemon,调整jvm内存大小
org.gradle.daemon=truefiguremand.configureconorg❝ =true
org.gradle .parallel=true
org.gradle。 jvmargs=-Xmx4096m -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
//启用gradle缓存
org.gradle.caching=enBruecheandroid
//启用kotlin的增量并行收集
kotlin.incremental=true
kotlin.incremental.java=true
kotlin.incremental.js=trued.truechingenutin
kotlin.parallel.tasks.in.project=true true //启用kotlin并行翻译incremental.apt=true //增量翻译版本及以后支持
kapt.include.compile.classpath=false //避免 kapt 如果 kapt 所基于的内容没有改变,则编译后的内容完全被复用,这样可以节省时间: app:kaptGenerateStubsDebug 在 Kotli 的上图中
中上面的配置,我们首先调整了gradle配置,然后启用了缓存和kotlin和capt。
如果项目中使用了kapt,请使用最新的kapt版本。在撰写本文时,Kapt 的最新版本是1.3.31
2。优化应用程序
1。在项目的应用程序目录中,在文件 file:/// 中编辑 如果将其用于 kapt,请添加以下选项
kapt {
usebuildcache = true
javacoptions { ( option "-xmaxerrs") “,500)}}? 8
}
}
2。其他不太重要的优化似乎对时间没有特别大的影响
优化版本号配置。如果是debug版本,不要使用动态版本号
//原始配置
defaultConfig {
...
minSdkVersion 19dk 19dkion versionCode gitVersionCode()
versionName currentName() ...
}
/ /编辑为
defaultConfig {❀ion 19... targetSdkVersion 28
versionCode 1
版本名称“”
. ..
}
应用选项。所有 { 变体 ->
...
如果(variant.buildType.name == "release") {
versionName = currentName()
versionCode = gitVersionCode()
}
}❀ }❀ 上面的 versionCode 配置使用了 git - 作为版本号的发货数量。在本地调试模式下,实际上最好对版本号进行硬编码。如果版本号发生变化,则必须重新创建 Manifest 文件和完整编译的应用程序,从而导致 InstantRun 无法使用。 (PS 实际上我们从未使用过 InstantRun)。因此将其更改为硬编码的版本号,然后使用 applicationVariants 中的正常版本号来确定它是否是发行版。然后还有一点就是,在使用依赖版本的时候,尽量不要使用带+号的版本依赖。使用固定版本号速度更快。
希望大家节省下来的组装时间可以用来陪伴家人。享受吧~
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。