使用Android Studio進行開,隨着項目的增大,依賴庫的增多,構建速度愈來愈慢,如今最慢要6分鐘才能build一個release的安裝包,在網上查找資料,發現能夠經過一些配置能夠加快速度,這裏跟你們分享一下。
開啓gradle單獨的守護進程
在下面的目錄下面建立gradle.properties文件:html
- /home/<username>/.gradle/ (Linux)
- /Users/<username>/.gradle/ (Mac)
- C:\Users\<username>\.gradle (Windows)
- 把下面配置複製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
複製代碼
同時上面的這些參數也能夠配置到前面的用戶目錄下的gradle.properties文件裏,那樣就不是針對一個項目生效,而是針對全部項目生效。
上面的配置文件主要就是作, 增大gradle運行的java虛擬機的大小,讓gradle在編譯的時候使用獨立進程,讓gradle能夠平行的運行。
1.申請大內存java
installation path\studio64.exe.vmoptions or studio.exe.vmoptionsjvm
使用文本編輯器打開,找到起始兩行,以下編輯器
-Xms128m
-Xmx750mide
修改最小值和最大值,建議爲測試
-Xms256m
-Xmx2048mgradle
2 優化編譯優化
file->setting->compileui
勾選除第二項以外的其餘選項,並在VM options裏填入:this
-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
通過測試,編譯速度有很大提高,比較大的項目從以前的5-8分鐘能夠減小到1-2分鐘。