Android Studio gradle花费太长的时间来构build

我的Android Studio项目用于构build速度更快,但现在需要花费很长时间来构build。 任何想法可能导致延误? 我曾尝试https://stackoverflow.com/a/27171878/391401但没有效果。 我没有任何反病毒运行可能会中断的构build。 我的应用程序的规模也不是那么大(大约5MB ),并且在几秒钟内就可以生成,但是不知道发生了什么变化。

10:03:51 Gradle build finished in 4 min 0 sec 10:04:03 Session 'app': running 10:10:11 Gradle build finished in 3 min 29 sec 10:10:12 Session 'app': running 10:20:24 Gradle build finished in 3 min 42 sec 10:28:18 Gradle build finished in 3 min 40 sec 10:28:19 Session 'app': running 10:31:14 Gradle build finished in 2 min 56 sec 10:31:14 Session 'app': running 10:38:37 Gradle build finished in 3 min 30 sec 10:42:17 Gradle build finished in 3 min 40 sec 10:45:18 Gradle build finished in 3 min 1 sec 10:48:49 Gradle build finished in 3 min 30 sec 10:53:05 Gradle build finished in 3 min 22 sec 10:57:10 Gradle build finished in 3 min 19 sec 10:57:11 Session 'app': running 

在Android Studio中,进入文件 – >设置 – >构build,执行,部署 – >构build工具 – > Gradle

检查“全局Gradle设置”下的“离线工作”

这将减less90%的gradlebuild造时间。

检查这个以减少构建时间

如果您正在使用Google Play服务,请确保您没有在您的Gradle构build脚本中使用此function:

 compile 'com.google.android.gms:play-services:8.3.0' 

只能使用您的应用真正使用的那些Google API。 如果您正在使用的是Google地图,则可以使用以下方法:

 com.google.android.gms:play-services-maps:8.3.0 

当我这样做时,我的编译时间从2分钟到25秒左右。 有关可以select性编译的Google apis列表,请参阅:

https://developers.google.com/android/guides/setup

find原因了! 如果Android Studio具有代理服务器设置,并且无法访问服务器,则需要花费很长时间才能构build,可能是尝试访问代理服务器并等待超时。 当我删除代理服务器设置其工作正常。

删除代理: File > Settings > Appearance & Behavior > System settings > HTTP Proxy

find一个简单和最好的方法来build立gradle

去你的应用>>打开你的gradle.properties,并从它改变几行[删除 ]

否则,你也可以复制粘贴我的下面的代码片段

  # Project-wide Gradle settings. # IDE (eg Android Studio) users: # Gradle settings configured through the IDE *will override* # any settings specified in this file. # For more details on how to configure your build environment visit # http://www.gradle.org/docs/current/userguide/build_environment.html # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. # Default value: -Xmx2048m -XX:MaxPermSize=512m org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects org.gradle.parallel=true 

它早些时候为我工作了大约2-3分钟,现在只需要5-6秒

在上面的情况下,我的Mac机器有8GB的内存,所以我分配了4gb的gradle

以下步骤将使其速度提高10倍,减less构build时间90%

首先在以下目录中创build一个名为gradle.properties的文件:

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

将此行添加到文件中:

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

启用Java 8function导致致命的缓慢构build

gradle这个

  jackOptions { enabled true } compileOptions { targetCompatibility 1.8 sourceCompatibility 1.8 } 

删除上面的行后,它在几秒钟内build立。

有问题与杰克编译需要很长时间

项目经理的答案

我们知道,构build时间现在是杰克的问题。 2.4 Gradle插件的改进应该是增量构build的重大改进。

截至目前,我发现最新的Gradle版本是2.3.0-beta4

推荐阅读: 我如何在Gradle版本上节省5h /周 !

根据这个优秀的post,你应该尝试优化以下内容:

  • Gradle守护进程
  • 并行项目执行
  • 按需configuration项目
  • 模块很贵…

@AndroidDev解决scheme为我工作。 我已经把整个lib包含在gradle中。

 compile 'com.google.android.gms:play-services:8.4.0' 

改变来解决问题。 从4分钟到1分钟

 compile 'com.google.android.gms:play-services-ads:8.4.0' compile 'com.google.android.gms:play-services-analytics:8.4.0' 

日Thnx

在Android Studio 2.0的testing版中,他们推出了一个名为Instant Run的function。 这大大缩短了构build时间。 核心概念是,Android Studio只是将已经运行的应用程序所做的小改动。

它将我们在代码中所做的更改归类为三个部分:热插拔,热插拔和冷插换,根据构build时所做的更改将承担多less负载。 之后,它只是交换已经运行的应用程序中的代码,我们可以看到几秒钟的变化。 查看他们的文档获取更多信息。

在这里你可以下载Android Studio 2.0预览。

PS:这个function有几个问题。 他们已经在文档中列出。 安装前检查一下。

1)我添加一些新的库依赖到我的gradle文件后,我的编译时间严重增加,事后certificate我需要使用multidex。 当我正确设置multidex时,我的编译时间长达2-3分钟。 所以,如果你想要更快的编译时间,避免使用multidex,并尽可能减less库依赖的数量。

2)你也可以尝试在android studio中启用“离线工作”,就像这里提到的那样,这是有道理的。 每次构build时都不会重新读取库。 也许缓慢的连接或代理/ vpn使用与“脱机工作”禁用可能会导致生成时间缓慢。

3)谷歌服务 – 如上所述,不使用整个捆绑,只使用它所需的部分。

检查您的Internet连接 。 如果上网速度很慢,gradle build也需要很长时间才能build成。 我检查通过改变我的无线互联网连接与另一个很好的速度连接。 现在build立时间是正常的。 请在尝试其他解决scheme之前尝试一下。 有人会做出错误的决定,重新安装或更改设置。 我希望这会有所帮助。 感谢致敬。

如果您使用Windows 8 …

DroidArc和AndroidDev解决scheme在哪里有用,但不是enougth。 我的问题是与我的Windows 8操作系统及其100%的磁盘使用率有关。

特别是Windowssearch服务,是最耗费的。 禁用它:cmd(Admin)> net.exe停止“Windowssearch”

我按照这个链接的方向,它解决了真正的4个技巧,以解决100%的磁盘使用率,提高Windows性能的问题

希望这可以帮助。

我长期面对同样的问题,但我通过调整gradle中的设置来解决这个问题。

第1步:在模块应用程序中添加依赖BuildScript

 buildscript { dependencies { classpath 'com.android.tools.build:gradle:2.0.0-alpha9' } } 

第2步:添加dexOption并给出以下heapSize

  dexOptions { incremental = true; preDexLibraries = false javaMaxHeapSize "2g" } 

第3步:添加productFlavors

  productFlavors { dev { minSdkVersion 23 applicationId = "com.Reading.home" } prod { minSdkVersion 15 applicationId = "com.Reading.home" // you don't need it, but can be useful } } 

这应该会减less你的构build时间。

  1. 转到文件 – >设置 – > Gradle – >将其设置为离线模式并检查

我的电脑上有类似的问题。 Windows Defender阻止了Gradle Building的某些部分。 我已经禁用了,之后工作正常。

尝试重新启动计算机并再次运行Android Studio。 在尝试使用Android目标代码库构buildCordova / Phonegap项目时为我工作。