美文网首页
Gradle编译优化(kotlin-java混编)

Gradle编译优化(kotlin-java混编)

作者: 海阔sun天空 | 来源:发表于2021-03-23 14:31 被阅读0次
    # 增大jvm内存
    org.gradle.jvmargs=-Xmx5g -XX:MaxMetaspaceSize=1g -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
    # 开启守护进程
    org.gradle.daemon=true
    # 开启并行编译
    org.gradle.parallel=true
    # 开启新的孵化机制
    org.gradle.configureondemand=true
    # 构建忽略lint
    gradle=build -x lint -x lintVitalRelease
    # 开启gradle缓存
    org.gradle.caching=true
    android.enableBuildCache=true
    # 开启kotlin并行编译
    kotlin.incremental=true
    kotlin.incremental.java=true
    kotlin.incremental.js=true
    # 开启kotlin缓存机制
    kotlin.caching.enabled=true
    # 注解处理器增量编译
    kapt.incremental.apt=true
    # 对 worker 进行了优化,使编译更快!
    kapt.use.worker.api=true
    # Gradle Worker API支持并行执行
    kotlin.parallel.tasks.in.project=true
    # 跳过Kapt的一些编译
    kapt.include.compile.classpath=false
    

    使用kapt的地方:

    kapt {
        useBuildCache = true
        javacOptions {
            // 注解处理器的最大错误次数
            option("-Xmaxerrs", 500)
        }
    }
    

    app下的gradle:

    android{
        dexOptions {
            preDexLibraries true
            maxProcessCount 8
        }
    }
    
    tasks.withType(JavaCompile) {
        //在 Gradle 4.10 版本之后便默认使用了增量编译
        //如果在更老的版本需要启动增量编译,可以使用如下配置:
        options.incremental = true
        //解决java控制台输出中文乱码
        options.encoding = "UTF-8"
    }
    

    添加这些后,clean首次构建时间与之前一样,这是因为第一次构建要生成缓存,构建完成后再次clean重新构建,时间会大幅度缩短。
    同理,增量编译首次构建时间也跟之前一样,再次编译时间会大幅度缩短。

    PS:只开并行和增量编译,把缓存的配置全部去掉,构建时间也能缩短相比加缓存要少些,但是构建时间稳定,不会像加了缓存配置时而时间很长时而时间很短,大家自行决定吧。

    相关文章

      网友评论

          本文标题:Gradle编译优化(kotlin-java混编)

          本文链接:https://www.haomeiwen.com/subject/yvkzsktx.html