为什么gradle 2.0这么慢?

编程入门 行业动态 更新时间:2024-10-27 05:37:06
本文介绍了为什么gradle 2.0这么慢?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

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

非常讨厌。更令人讨厌的是,一个合适的项目可能需要4-5分钟才能完成,并且会减慢一切。

这可能是什么原因造成的?

解决方案

自从2.0.0-rc3以来遇到同样的问题。并且有时在长时间构建(大约10分钟)之后获得 gc开销限制超过错误。

$ b UPD: 另外它在SSD上使用了大约6 GB的磁盘空间。

有下一个配置:

在应用程序的 build.gradle 中:

dexOptions { javaMaxHeapSize4g}

在 gradle- wrapper.properties :

org.gradle.configureondemand = true org.gradle。 daemon = true org.gradle.parallel = true

UPD 2: 我认为我找到了临时解决方案 - 我已经关闭了 Instant Run 并添加了下一个配置:

$ p $ gradle.properties .gradle.jvmargs = -Xms512m -Xmx2048m org.gradle.daemon = true org.gradle.parallel = true

在 build.gradle 中:

dexOptions {增量真正 javaMaxHeapSize4g}

-server -Xms1G -Xmx2G -XX:MaxPermSize = 450m -XX:MetaspaceSize = 512m

您可以在 studio.vmoptions p>

Mac OS:

{FOLDER_NAME} /

Linux: 〜/。{FOLDER_NAME} /studio.vmoptions和/或〜/。{FOLDER_NAME} /studio64.vmoptions

Windows:

%USERPROFILE%\。{FOLDER_NAME} \studio.exe.vmoptions和/或%USERPROFILE%\。{FOLDER_NAME} \studio64.exe.vmoptions

UPD 3:我认为,我发现Android Studio为什么使用这么多的磁盘空间。 $ b 在每个 gc开销限制超过错误之后,Android Studio会创建一个文件 java_pid< proccess_id_number_here> .hprof 在您的项目的根文件夹中。

它的大小约为 1.2 Gb ,大量的 gc开销限制超过了错误 - > 很多这些文件。您可以删除它们。

UPD 4:更新到Android Studio版本后,版本变得更快了 2.1 并在 dexOptions dexOptions { incremental true maxProcessCount 4 javaMaxHeapSize5g}

另外,我在 gradle.properties 中增加了Gradle的最大堆大小:

org.gradle.jvmargs = -Xmx5120M org.gradle.daemon = true org.gradle.parallel = true

而且我仍然使用修改过的 studio.vmoptions 文件,如上所述。

I'm using Gradle 2.0.0 with Android Studio and an empty project takes 2 minutes to build. It also creates a 100% CPU usage under Windows 8.1.

Very annoying. Even more annoying that a proper project can take up to 4-5 minutes to build, and it slows everything down.

What could cause this?

解决方案

Have the same problem since 2.0.0-rc3. And sometimes after long build (about 10 minutes) getting gc overhead limit exceeded error.

UPD: Also it uses about 6 GB disk space on SSD.

Have the next configuration:

in app's build.gradle:

dexOptions { javaMaxHeapSize "4g" }

in gradle-wrapper.properties:

org.gradle.configureondemand=true org.gradle.daemon=true org.gradle.parallel=true

UPD 2: I think I've found temporary solution - I've turned off Instant Run and added next configs:

in the gradle.properties:

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

in the build.gradle:

dexOptions { incremental true javaMaxHeapSize "4g" }

in the studio.vmoptions:

-server -Xms1G -Xmx2G -XX:MaxPermSize=450m -XX:MetaspaceSize=512m

You can find studio.vmoptions in:

Mac OS:

~/Library/Preferences/{FOLDER_NAME}/

Linux:

~/.{FOLDER_NAME}/studio.vmoptions and/or ~/.{FOLDER_NAME}/studio64.vmoptions

Windows:

%USERPROFILE%\.{FOLDER_NAME}\studio.exe.vmoptions and/or %USERPROFILE%\.{FOLDER_NAME}\studio64.exe.vmoptions

UPD 3: I think, I've found why Android Studio uses so much disk space.

After every gc overhead limit exceeded error Android Studio creates a file java_pid<proccess_id_number_here>.hprof in your project's root folder.

It has size about 1.2 Gb, a lot of the gc overhead limit exceeded errors -> a lot of those files. You can just delete them.

UPD 4: Builds became much faster, after updating to Android Studio version 2.1 and adding property maxProcessCount in the dexOptions

dexOptions { incremental true maxProcessCount 4 javaMaxHeapSize "5g" }

Also, I've increased the maximum heap size for the Gradle in the gradle.properties:

org.gradle.jvmargs=-Xmx5120M org.gradle.daemon=true org.gradle.parallel=true

And I'm still using modified studio.vmoptions file, as I've described above.

更多推荐

为什么gradle 2.0这么慢?

本文发布于:2023-10-26 11:41:41,感谢您对本站的认可!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:gradle

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!