Android Studio gradle需要很长时间才能构建

Har*_*ish 211 android build gradle android-studio build.gradle

我的Android Studio项目用于构建更快,但现在需要很长时间才能构建.可能导致延误的任何想法?我试过/sf/answers/1902031491/但没有效果.我没有运行可能会中断构建的Anti病毒.我的应用程序也不是那么大(大约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  
Run Code Online (Sandbox Code Playgroud)

Bis*_*kar 436

在Android Studio中,转到文件 - >设置 - >构建,执行,部署 - >构建工具 - > Gradle

(如果在Mac上) Android Studio - >首选项... - >构建,执行,部署 - >构建工具 - > Gradle

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

它将减少90%的gradle构建时间.

检查这个以减少构建时间

如果您刚刚在gradle中添加了新的依赖项,则必须取消选中脱机工作,否则gradle将无法解析依赖项.完成解析后,您可以检查脱机工作以获得更快的构建

  • 当你添加一个新的库时,你必须在线进行一次,这将通过gradle build通知,使项目可以运行@DanyY (45认同)
  • 当我们将它们添加到build.gradle时,此配置是否会停止获取新库? (18认同)
  • 是只有我一个人这样,还是 Android Studio 3.6.2 中不再有“离线工作”选项了? (15认同)
  • 这是否意味着问题始终是互联网速度而不是处理器速度? (13认同)
  • 工作得很好.从12分钟到5秒 (9认同)
  • @Fugogugo - 看看这些帖子:/sf/ask/4045844071/#:~:text=From%20the %20Android%20Studio%203.6,button%20in%20the%20Gradle%20panel..和/sf/ask/4233253251/ (4认同)
  • 不幸的是,这对我的系统没有任何影响。 (2认同)

And*_*Dev 147

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

compile 'com.google.android.gms:play-services:8.3.0'
Run Code Online (Sandbox Code Playgroud)

仅使用您的应用实际使用的那些Google API.如果你使用的只是谷歌地图,你会使用这个:

com.google.android.gms:play-services-maps:8.3.0
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我的编译时间从2分钟到大约25秒.有关您可以有选择地编译的Google API的列表,请参阅:

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

  • 你应该得到100多个赞成票.每个其他来源建议添加`org.gradle.parallel = true`和命令行相关...但没有一个提供简单直接的理解实际发生的事情.根据你的建议,我的构建时间从1分5秒到3.427秒.真棒! (12认同)

And*_* me 49

找到了一种简单而且最好的方法来构建gradle

转到您的应用>>打开您的gradle.properties并从中更改几行[删除# ]

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

    # Project-wide Gradle settings.

# IDE (e.g. 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
Run Code Online (Sandbox Code Playgroud)

它对我来说早了几乎需要2-3分钟,现在它只用了5-6秒

在上面的场景我的mac机器有8GB内存,所以我为gradle分配了4gb


Har*_*ish 34

找到原因!! 如果Android Studio具有代理服务器设置但无法访问服务器,那么构建需要很长时间,可能是它试图到达代理服务器并等待超时.当我删除代理服务器设置其工作正常.

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

  • AS是完全的笑话和bs.我只是厌倦了这个废话. (24认同)
  • 我同意!!!我从Eclipse迁移一个大项目时遭受了大量的痛苦,现在错误被清除,AS的构建永远不会完成!我讨厌AS @The_Martian (8认同)
  • 如何删除代理服务器? (3认同)
  • 在Windows文件>设置>外观和行为>系统设置> HTTP代理 (2认同)
  • 我的问题也在代理中,但在那里,我必须在gradle属性中添加HTTPS代理.HTTP代理是不够的:systemProp.http.proxyHost = xxx.xxx.xxx.xxx systemProp.http.proxyPort = 8080 systemProp.https.proxyHost = xxx.xxx.xxx.xxx systemProp.https.proxyPort = 8080 (2认同)

use*_*370 18

遵循这些步骤将使其快10倍并缩短构建时间90%

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

/home/<username>/.gradle/ (Linux)
/Users/<username>/.gradle/ (Mac)
C:\Users\<username>\.gradle (Windows)
Run Code Online (Sandbox Code Playgroud)

将此行添加到文件中:

org.gradle.daemon=true

org.gradle.parallel=true
Run Code Online (Sandbox Code Playgroud)

  • 您可以直接从位于studio项目下的gradle.properties中进行设置. (4认同)
  • 是也启用此选项org.gradle.jvmargs = -Xmx2048m -XX:MaxPermSize = 512m -XX:+ HeapDumpOnOutOfMemoryError -Dfile.encoding = UTF-8 (3认同)
  • 设置MaxPermSize = 1024m (2认同)

tch*_*dze 17

启用Java 8功能导致致命的慢速构建

gradle这个

 jackOptions {
        enabled true
  }

  compileOptions {
    targetCompatibility 1.8
    sourceCompatibility 1.8
}
Run Code Online (Sandbox Code Playgroud)

删除上面的行后,它会在几秒钟内构建.

有问题用Jack编译需要很长时间

项目经理的回答

我们知道,现在Jack的构建时间是一个问题.我们对2.4 Gradle插件进行了改进,这应该是增量构建的重大改进.

截至目前,我能找到的最新Gradle版本是2.3.0-beta4

  • 是的我同意.要在android studio中启用java 8,你需要使用Jack并通过这样做我的构建时间从1-2分钟构建到16分钟飞到月球......什么....它现在无法使用.一如既往的伟大工作谷歌 (4认同)

Ode*_*gev 16

推荐阅读: 如何在Gradle版本上每周节省5小时!

根据这篇优秀的帖子,你应该尝试优化以下内容:

  • Gradle Daemon
  • 并行项目执行
  • 按需配置项目
  • 模块很贵......


小智 11

在 Android Studio 3.6 以上版本中,有一个新位置可以切换 Gradle 的离线模式以启用或禁用 Gradle 的离线模式。

要启用或禁用 Gradle 的离线模式,请 View > Tool Windows > Gradle从菜单中选择。在 Gradle 窗口的顶部栏中,单击Toggle Offline Mode(设置图标附近)。

在此处输入图片说明

图标有点混乱,无论如何,当突出显示切换按钮时启用离线模式。:)

  • 非常感谢大佬,我自己真的无法弄清楚。 (2认同)

Kle*_*GjN 7

@AndroidDev解决方案为我工作.我把整个lib都包含在gradle中.

compile 'com.google.android.gms:play-services:8.4.0'
Run Code Online (Sandbox Code Playgroud)

改变解决了问题.从4分钟到1分钟.

compile 'com.google.android.gms:play-services-ads:8.4.0'
compile 'com.google.android.gms:play-services-analytics:8.4.0'
Run Code Online (Sandbox Code Playgroud)

日Thnx


小智 6

检查您的 Internet 连接。如果互联网速度很慢,gradle build 也需要很长时间来构建。我通过将我的 wifi 互联网连接更改为另一个速度良好的连接来检查。现在构建时间是正常的。在转到其他解决方案之前,请尝试此操作。有人会做出错误的决定来重新安装或更改设置。我希望它会有所帮助。感谢致敬。


归档时间:

查看次数:

247938 次

最近记录:

6 年,3 月 前