android studio 1.2 gradle非常慢

时间:2015-05-04 07:37:02

标签: android android-studio gradle

我使用Android Studio已经有一段时间了,到目前为止我使用的是1.0.1, gradle有点慢,大约1.5分钟为assembleDebug(我的项目非常大!) 但今天我将我的AS更新为1.2,现在同样的过程需要大约7到10分钟,有时甚至没有结果!

有什么设置我必须改变以使其更快? 老实说,每次调试运行10分钟都是一场噩梦!

同时大多数时候,我的CPU使用率是10%左右! (它实际上是空闲的!) 因为在gradle工作之前,它几乎一直在100%

5 个答案:

答案 0 :(得分:33)

有同样的问题。

我所做的是将全局gradle设置更改为离线工作,这可以通过转到Preferences =>来完成。摇篮。这确实有所作为。

我见过人们使用的另一种方法,但我还没有使用过的方法是在gradle文件夹中创建一个gradle.properties,如下所示:

只需在以下目录中创建名为gradle.properties的文件:

/home/<username>/.gradle/ (Linux)
/Users/<username>/.gradle/ (Mac)
C:\Users\<username>\.gradle (Windows)

将此行添加到文件中:

org.gradle.daemon=true

请查看this链接以获取更多选项以及有关加快Gradle的详细说明

希望这有帮助!

答案 1 :(得分:11)

我正在使用Google+登录测试我的应用。所以我将发布签名添加到调试版本。应用程序在~26秒内编译。

build.gradle 模块: app 文件

signingConfigs {
    debug {
        storeFile file(project.property("MyApp.signing"))
        storePassword project.property("MyApp.signing.password")
        keyAlias project.property("MyApp.signing.alias")
        keyPassword project.property("MyApp.signing.password")
    }
}

当我删除~7.5秒。

接下来我测试了离线成绩

文件 - 设置 - 构建,执行... - 构建工具 - Gradle - 离线工作

enter image description here

现在我的应用程序在~4.5秒内编译。

当然我也添加了开启功能 - 并行编译独立模块(可能需要更大的堆大小) - 自动创建项目(仅在未运行/调试时有效)

文件 - 设置 - 构建,执行...... - 编译器

enter image description here

答案 2 :(得分:1)

此问题的完整答案如下:

  • 将android studio升级到1.3版(稳定版)或1.4以上(编写本文时的beta版)。
  • 将gradle升级到1.3。+(+可以替换为正数)将其更改为build.gradle文件。
  • 更改您的gradle-wrapper.properties文件并在最后添加distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip(您可以删除任何旧条目)。
  • 转到Preference - &gt; Gradle并将其设置为脱机工作。

woila !!!我能够编译并运行代码,然后 ~5秒 我的意思是

答案 3 :(得分:0)

原因可能是multiDex,

在您的multiDexEnabled文件中

build.gradle变为 false (仅限调试,请保留以供发布)。

android {
...
    defaultConfig {
        ...
        multiDexEnabled false
        ...
    }
}

此外,您应该考虑使用最新版本(目前为2.4),编辑gradle-wrapper.properties文件并设置gradle- 2.4 -all.zip

distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip

什么是MultiDex:https://developer.android.com/tools/building/multidex.html

答案 4 :(得分:-5)

从设置转到HTTP连接并禁用任何代理,您将找到所需的速度