加快AS的Gradle Build速度
阿新 • • 發佈:2017-05-09
led read href mod should java se enable mic 推薦
來源: http://blog.csdn.net/xsl_bj/article/details/51819740
來自為知筆記(Wiz)
隨著項目的代碼以及依賴庫的日益增多,構建的速度卻是越來越慢,Android Studio2.0 之後提供了Instant Run貌似福利來了,但經過一段時間的使用發現不盡如人意,最大的吐槽點是首次編譯的速度真是慢的讓人抓狂,編譯當前的項目就得5分鐘左右。。。
所以,我對Instant Run的目前選擇是從入門到放棄。。。轉而尋求其他方法,將構建耗時從5分鐘減少到1分鐘多,在此分享給感興趣的同學。
一、創建配置文件
打開Mac用戶名下的.gradle文件夾,在以下目錄中:
/Users/username/.gradle/
新建一個gradle.properties文件,並在裏面添加以下內容
# Project-wide Gradle settings. # IDE (e.g. Android Studio) users:# Settings specified in this file will override any Gradle settings# configured through the IDE.# For more details on how to configure your build environment visit# http://www.gradle.org/docs/current/userguide/build_environment.html# The Gradle daemon aims to improve the startup and execution time of Gradle. # When set to true the Gradle daemon is to run the build.# TODO: disable daemon on CI, since builds should be clean and reliable on servers
org.gradle.daemon=true# Specifies the JVM arguments used for the daemon process.# The setting is particularly useful for tweaking memory settings.# Default value: -Xmx10248m -XX:MaxPermSize=256m
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -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# Enables new incubating mode that makes Gradle selective when configuring projects.# Only relevant projects are configured which results in faster builds for large multi-projects.# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demand
org.gradle.configureondemand=true
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
上面的這些參數也可以配置到前面的用戶目錄下的gradle.properties文件裏,那樣就不是針對一個項目生效,而是針對所有項目生效。
上面的配置文件主要就是做, 增大gradle運行的Java虛擬機的大小,讓gradle在編譯的時候使用獨立進程,讓gradle可以平行的運行。
二、配置Android Studio的Gradle
在android studio的配置中,開啟offline模式,以及修改配置。實際上的配置和上面的一大段一樣,主要是在這個地方配置的只會在ide構建的時候生效,命令行構建不會生效。
三、配置當前項目core下build.gradle
添加dex增量編譯
這還是一個實驗性的功能,但是還是推薦打開試試,設置dexOptions
dexOptions {
//使用增量模式構建
incremental true//最大堆內存
javaMaxHeapSize "8g"//是否支持大工程模式
jumboMode = true//預編譯
preDexLibraries = true//線程數
threadCount = 8
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
以上就配置完畢,如果哪位同學有更好的方法,歡迎拍磚~
來源: http://blog.csdn.net/xsl_bj/article/details/51819740
來自為知筆記(Wiz)
加快AS的Gradle Build速度