我是Android开发的新手,我的Gradle构建过程需要很长时间。对我来说等待gradle构建很烦人。任何帮助都是适用的。提前致谢
答案 0 :(得分:6)
我提到了一些解决方案:
技术#1
打开gradle.properties文件
添加以下行
org.gradle.daemon =真
技术#2
打开gradle.properties文件
添加以下行
org.gradle.parallel =真
技术#3
打开gradle.properties文件
添加以下行
org.gradle.jvmargs = -Xmx2048m -XX:MaxPermSize = 512m -XX:+ HeapDumpOnOutOfMemoryError -Dfile.encoding = UTF-8
技术#4
还有许多其他技术可以优化gradle构建的速度。如果您仍然遇到问题,我更喜欢您从命令行使用gradle。
有关详细信息,您可以在G +上与开发人员查看discussion。
答案 1 :(得分:6)
我建议运行所有3种技术以及一些android gradle插件dexOptions:
我有以下 gradle.properties 文件:
org.gradle.daemon=true
org.gradle.jvmargs=-Djava.awt.headless=true -Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
我也在 app / build.gradle 文件中也有dexOptions:
dexOptions {
incremental true
javaMaxHeapSize "4096M"
jumboMode true
maxProcessCount 8
preDexLibraries false
threadCount 8
}
您可以为您的系统调整这些值。以下是有关这些选项的更多信息:
dexInProcess - 是将dx编译器作为单独的进程运行还是在Gradle守护程序JVM中运行。
javaMaxHeapSize - 在调用dx时指定-Xmx值。示例值为" 2048m"。
jumboMode - 在dx(--force-jumbo)中启用巨型模式。
maxProcessCount - 可用于dex的最大并发进程数。默认为4。
preDexLibraries - 是否预先设定图书馆。这可以改善增量构建,但是干净的构建可能会更慢。
threadCount - 运行dx时要使用的线程数。默认为4。
答案 2 :(得分:0)
我只是偶然发现如何构建速度提高2倍。可能它将来会被修复,但现在它就像发条一样。 您需要的只是隐藏您的工作室(cmd + H或cmd + R代表mac,win + D代表Windows)。 我现在测试了100多个版本(Android Studio 2.3),没有例外。