标签:
编辑推荐:稀土掘金,这是一个针对技术开发者的一个应用,你可以在掘金上获取最新最优质的技术干货,不仅仅是Android知识、前端、后端以至于产品和设计都有涉猎,想成为全栈工程师的朋友不要错过!
已经使用Android Studio进行开发超过一年,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢要6分钟才能build一个release的安装包,在网上查找资料,发现可以通过一些配置可以加快速度,这里跟大家分享一下。
在下面的目录下面创建gradle.properties
文件:
/home/<username>/.gradle/
(Linux)
/Users/<username>/.gradle/
(Mac)
C:\Users\<username>\.gradle
(Windows)
并在文件中增加:
同时修改项目下的gradle.properties
文件也可以优化:
1 # Project-wide Gradle settings. 2 # IDE (e.g. Android Studio) users: 3 # Settings specified in this file will override any Gradle settings 4 # configured through the IDE. 5 # For more details on how to configure your build environment visit 6 # http://www.gradle.org/docs/current/userguide/build_environment.html 7 # The Gradle daemon aims to improve the startup and execution time of Gradle. 8 # When set to true the Gradle daemon is to run the build. 9 # TODO: disable daemon on CI, since builds should be clean and reliable on servers 10 org.gradle.daemon=true 11 # Specifies the JVM arguments used for the daemon process. 12 # The setting is particularly useful for tweaking memory settings. 13 # Default value: -Xmx10248m -XX:MaxPermSize=256m 14 org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 15 # When configured, Gradle will run in incubating parallel mode. 16 # This option should only be used with decoupled projects. More details, visit 17 # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 18 org.gradle.parallel=true 19 # Enables new incubating mode that makes Gradle selective when configuring projects. 20 # Only relevant projects are configured which results in faster builds for large multi-projects. 21 # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demand 22 org.gradle.configureondemand=true
同时上面的这些参数也可以配置到前面的用户目录下的gradle.properties文件里,那样就不是针对一个项目生效,而是针对所有项目生效。
上面的配置文件主要就是做, 增大gradle运行的java虚拟机的大小,让gradle在编译的时候使用独立进程,让gradle可以平行的运行。
在android studio的配置中,开启offline模式,以及修改配置。实际上的配置和上面的一大段一样,主要是在这个地方配置的只会在ide构建的时候生效,命令行构建不会生效。
基于上面的配置,命令行构建时在命令后面加上这个参数即可 --daemon --parallel --offline
。
使用网上第三方的依赖库时尽量使用aar,可以在mavenhttp://gradleplease.appspot.com/或者githuhttps://github.com/Goddchen/mvn-repo搜索。
自己的库模块也可以打包成aar,关于这个可以参考stormzhang的文章http://www.stormzhang.com/android/2015/03/01/android-reference-local-aar/。
经过这样一番折腾,我原来需要4,5分钟才能构建完成的项目,现在只需要30秒左右就可以构建完成了。当然了,如果你这样还是不可以的话,那么,你应该换电脑了,ssd的硬盘,更大的内存,必须的上了。
原文地址:http://blog.isming.me/2015/03/18/android-build-speed-up/
标签:
原文地址:http://www.cnblogs.com/Sharley/p/5792953.html