Android studio 为什么Gradle2.0这么慢?

Android studio 为什么Gradle2.0这么慢?,android-studio,gradle,android-gradle-plugin,Android Studio,Gradle,Android Gradle Plugin,我在Android Studio中使用Gradle 2.0.0,构建一个空项目需要2分钟。它还可以在Windows 8.1下创建100%的CPU使用率 很烦人。更令人恼火的是,一个合适的项目可能需要4-5分钟来构建,而且它会减慢一切 这是什么原因造成的 自2.0.0-rc3以来出现了相同的问题。有时在长时间构建(大约10分钟)后,获取gc开销限制超过了错误 UPD: 此外,它在SSD上使用约6 GB的磁盘空间 具有下一个配置: 应用程序中的build.gradle: dexOptions {

我在Android Studio中使用Gradle 2.0.0,构建一个空项目需要2分钟。它还可以在Windows 8.1下创建100%的CPU使用率

很烦人。更令人恼火的是,一个合适的项目可能需要4-5分钟来构建,而且它会减慢一切


这是什么原因造成的

自2.0.0-rc3以来出现了相同的问题。有时在长时间构建(大约10分钟)后,获取
gc开销限制超过了
错误

UPD: 此外,它在SSD上使用约6 GB的磁盘空间

具有下一个配置:

应用程序中的
build.gradle

dexOptions {
        javaMaxHeapSize "4g"
    }
dexOptions {
        incremental true
        javaMaxHeapSize "4g"
    }
gradle wrapper.properties
中:

org.gradle.configureondemand=true
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xms512m -Xmx2048m
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx5120M
org.gradle.daemon=true
org.gradle.parallel=true
UPD 2: 我想我已经找到了临时解决方案-我已经关闭了
Instant Run
,并添加了下一个配置:

gradle.properties
中:

org.gradle.configureondemand=true
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xms512m -Xmx2048m
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx5120M
org.gradle.daemon=true
org.gradle.parallel=true
build.gradle
中:

dexOptions {
        javaMaxHeapSize "4g"
    }
dexOptions {
        incremental true
        javaMaxHeapSize "4g"
    }
studio.vmoptions
中:

-server
-Xms1G
-Xmx2G
-XX:MaxPermSize=450m
-XX:MetaspaceSize=512m
您可以在以下位置找到
studio.vmoptions

Mac操作系统:

~/Library/Preferences/{FOLDER\u NAME}/

Linux:

~/.{FOLDER\u NAME}/studio.vmoptions和/或~/.{FOLDER\u NAME}/studio64.vmoptions

dexOptions {
        incremental true
        maxProcessCount 4
        javaMaxHeapSize "5g"
    }
窗口:

%USERPROFILE%\.{FOLDER\u NAME}\studio.exe.vmoptions和/或%USERPROFILE%\.{FOLDER\u NAME}\studio64.exe.vmoptions

dexOptions {
        incremental true
        maxProcessCount 4
        javaMaxHeapSize "5g"
    }
UPD3:我想,我已经找到了Android Studio使用如此多磁盘空间的原因

每次超过
gc开销限制后,Android Studio都会在项目的根文件夹中创建一个文件
java_pid.hprof

它的大小约为
1.2GB
,很多
gc开销限制超过了
错误
->
很多文件。你可以直接删除它们

UPD 4:升级到Android Studio 2.1版并在
dexOptions

dexOptions {
        incremental true
        maxProcessCount 4
        javaMaxHeapSize "5g"
    }
此外,我还在
Gradle.properties
中增加了Gradle的最大堆大小:

org.gradle.configureondemand=true
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xms512m -Xmx2048m
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx5120M
org.gradle.daemon=true
org.gradle.parallel=true

我仍在使用修改后的
studio.vmoptions
文件,如上所述。

在.gradle文件夹中创建一个名为gradle.properties的文件,并在该文件中添加以下行,然后重新启动studio一次:

org.gradle.daemon=true

org.gradle.jvmargs=-Xmx2048m-XX:MaxPermSize=512m-XX:+HeapDumpOnOutOfMemoryError-Dfile.encoding=UTF-8

org.gradle.parallel=true


org.gradle.configureondemand=true

此处相同。。我一直觉得“我不应该升级”@breakline请分享你的电脑配置非常不同。。。谢谢。还发现当您设置parallel=true时,gradle会产生4-5个单独的JVM。这是一个糟糕的设计还是背后有原因?非常奇怪。只有当您的项目有多个模块时,使用org.gradle.parallel启用并行构建才有用。例如,您可能在同一个项目中有一个Android应用程序、一个Java库、一个Android项目库和一个Android Wear模块。当您启用并行构建时,可以同时构建一些模块,利用计算机中的所有核心。你自己设置maxProcessCount有什么意义吗?根据此站点,默认设置为4: