Gradle Build速度加快方法汇总
Posted kenshinobiy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gradle Build速度加快方法汇总相关的知识,希望对你有一定的参考价值。
android Studio用起来越来越顺手,但是却发现Build的速度实在不敢恭维,在google和度娘了几把(....)之后,大体就是分配更高的内存,步骤:Setting-->搜索gradle-->Build Tools下的Gradle选项,右侧Gradle VM options-->改参数-Xmx2048m -XX:MaxPermSize=512m
还一种就是在gradle.properites里加两行
org.gradle.parallel=true
org.gradle.daemon=true
以上真的有提升么。我也不清楚,反正build的速度还在3分钟上下,这是完全不能接受的,build一次能下一部高清AV,硬盘都快满了,又要加硬盘了,这个月的伙食质量要下降了,要瘦出8块腹肌了....
好吧,以上都是废话,怎么以闪电般的速度Build呢,设置离线编译就OK了,like this:
这才叫提升,OK?
gradle更换仓库 解决下载速度慢问题
如果项目里的maven 仓库地址比较慢,一般默认是访问主仓库,所以比较慢,换用国内的仓库就好了,推荐换用阿里云的仓库地址
方法一:
这种方法只对当前项目有效
将build.gralde
repositories {
mavenCentral()
}
换成
allprojects {
repositories {
maven{ url ‘http://maven.aliyun.com/nexus/content/groups/public/‘}
}
}
方法二:
这种解决方法是对所有项目生效的
在gradle目录里,新建一个文件init.gradle将以下代码段粘贴进去。
一般来说,这里的gradle目录 默认是:C:Users用户名.gradle ,
当然你也可以自己指定,需要不过需要建立一个环境变量GRADLE_USER_HOME,并且重启计算机。
比如
GRADLE_USER_HOME = D:javagradle
访问的是阿里云的服务器,速度还是蛮快的
allprojects{
repositories {
def REPOSITORY_URL = ‘http://maven.aliyun.com/nexus/content/groups/public/‘
all { ArtifactRepository repo ->
def url = repo.url.toString()
if ((repo instanceof MavenArtifactRepository) && (url.startsWith(‘https://repo1.maven.org/maven2‘) || url.startsWith(‘https://jcenter.bintray.com‘))) {
project.logger.lifecycle ‘Repository ${repo.url} replaced by $REPOSITORY_URL .‘
remove repo
}
}
maven {
url REPOSITORY_URL
}
}
}
当然如果你发现了,更好的maven仓库地址,你也可以将以上的阿里云的服务器地址换成你想要的地址。
作者:bsqql123
链接:https://www.jianshu.com/p/ac4b7302200b
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
加快gradle的编译速度总结-亲身经历
说明
刚进公司,由于公司准备新地方,所以电脑不够用,先用自己的电脑开发。然后配置环境,AS运行新项目,第一次大概花了20多分钟,等得蛋都碎了一地。以为接下来会没事,鬼知道第二次还是10多分钟,我直接疯掉。然后网上查了下资料,总结了一些笔记,分享给大家。
参考网站
参考步骤
第一步:配置.gradle文件夹目录(开启Gradle单独守护线程)
-
在windows系统的C:Users用户名.gradle目录下创建gradle.properties文件(有直接用),然后添加以下内容,添加之后会在所以的项目中生效(有内容则并入),添加后全局生效
org.gradle.daemon=true // 开启线程守护,第一次编译时开线程,之后就不会再开了 org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 // 配置编译时的虚拟机大小 org.gradle.parallel=true // 开启并行编译,相当于多条线程再走 org.gradle.configureondemand=true 启用新的孵化模式
-
还可以在当前项目中的gradle.properties文件中添加以上内容,则只会在当前项目生效
第二步:修改android studio配置
-
Ctrl+Alt+S打开设置选项卡,找到Gradle选项,选中offline work,点击apply,如下
-
找到Compiler选项,设置如下
-
设置网络代理,增加访问网络速度,具体请参考提供的网站
-
在具体开发module的build.gradle文件中添加
dexOptions { //使用增量模式构建 incremental true //最大堆内存 javaMaxHeapSize "8g" //是否支持大工程模式 jumboMode = true //预编译 preDexLibraries = true //线程数 threadCount = 8 }
第三步:如果编译还是很慢的话,那就只能添加内容条和固态硬盘了
另一种神速编译方式,使用命令行脚本的方式编译
-
第一步:在目标项目的根节点下创建文件c.bat(名字尽量短) -->构建脚本,内容如下:
@Echo Off if /i "%1"=="" goto :default if /i "%1"=="i" goto :install if /i "%1"=="u" goto :uninstall ::执行实际的命令 goto :raw ::无参数情况下的默认执行命令 :default gradlew iD goto :eof ::实际命令 :raw gradlew %1 goto :eof ::安装所有Debug版本的APK :install gradlew iD goto :eof ::卸载所有版本的APK :uninstall gradlew uA goto :eof
-
第二步:在AS控制台的命令行Terminal窗口输入刚才的文件名,然后回车就好了,编译成功,然后打开应用
-
这种方式好像是会更快一些,而且不会导入整个电脑的卡顿,总的来说这种方法应该值得推荐。
总结:经过以上的配置之后,我的编译速度快了一些,但是还是很漫长需要2-3分钟,我估计是电脑的原因,该换配置了
作者:笑说余生
链接:https://www.jianshu.com/p/200d55b4d40a
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
android sdk manager设置国内镜像快速下载sdk
万恶的GFW,Android sdk manager通过google的url下载sdk卡成翔了,在网上找了几个国内镜像,亲测可用。
Android SDK在线更新镜像服务器:
中国科学院开源协会镜像站地址:
IPV4/IPV6: http://mirrors.opencas.cn 端口:80
IPV4/IPV6: http://mirrors.opencas.org 端口:80
IPV4/IPV6: http://mirrors.opencas.ac.cn 端口:80
上海GDG镜像服务器地址:
http://sdk.gdgshanghai.com 端口:8000
北京化工大学镜像服务器地址:
IPv4: http://ubuntu.buct.edu.cn/ 端口:80
IPv4: http://ubuntu.buct.cn/ 端口:80
IPv6: http://ubuntu.buct6.edu.cn/ 端口:80
大连东软信息学院镜像服务器地址:
http://mirrors.neusoft.edu.cn 端口:80
使用 Android SDK Manager下载sdk时 ,打开主界面,选择「Tools」、「Options」,弹出『Android SDK Manager - Settings』窗口:
在『Android SDK Manager - Settings』窗口中,在「HTTP Proxy Server」和「HTTP Proxy Port」输入框内填入 mirrors.neusoft.edu.cn 和 80,并且选中「Force
https://…sources to be fetched using http://…」复选框。
设置完成后单击「Close」按钮关闭重新打开即可。如下图:
以上是关于Gradle Build速度加快方法汇总的主要内容,如果未能解决你的问题,请参考以下文章
有啥办法能加快Android Studio中Gradle build速度