如何提高你的Gradle构建速度?
在本教程中,我们将看看使用Gradle构建可以加快构建时间的方法。
加快你的Android Gradle构建
随着我们的Android Studio项目规模增长,gradle构建性能变得至关重要。即使是最简单的项目,gradle的速度也相当慢。虽然每个项目都具有自己的复杂性和独特之处,从而导致构建速度不同。然而,关于构建速度,有一点是非常普遍的,那就是它占用了我们宝贵的时间,从而影响我们的生产力。一些基本的技巧可以帮助我们节省每次构建的额外几秒钟时间,这对生产力来说是很大的改变。
-
- 确保您正在使用最新版本的Gradle。通常,每次更新都会有显著的性能提升。注意:Java 1.8比1.6更快。也确保其已更新。
尽量减少使用模块。有许多情况需要对库进行fork并修改以符合我们的需求。模块比jar或aar依赖花费的时间要多4倍。这是因为每次都需要从头构建模块。
从首选项->构建、执行、部署->构建工具->Gradle中启用离线工作。这将不允许Gradle在构建过程中访问网络,并强制它从缓存中解析依赖项。注意:只有当所有依赖项都已下载并存储在缓存中时,此方法才有效。如果需要修改或添加新的依赖项,则必须禁用此选项,否则构建将失败。
从项目根目录打开gradle.properties文件。在其中添加以下代码行。org.gradle.daemon=true Gradle daemon是一个后台进程。添加此代码会在构建过程中消耗一些额外的内存。org.gradle.parallel=true上述代码行允许同时编译多个模块。除此之外,它还为我们提供其他优势,例如:
– 对未更改的项目重新使用配置
– 项目级的更新检查
– 在构建依赖项目时使用预构建的构件
添加以下代码行还可以帮助我们加快构建速度。org.gradle.configureondemand=true 另一个重要的属性是:org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8上述代码用于允许Java编译器最多使用2GB(2048MB)的可用内存。只有当您有超过2GB的可用内存时才应使用此选项。gradle.properties文件应该如下所示:
避免使用动态依赖,例如compile ‘com.google.maps.android:android-maps-utils:0.4+’。动态依赖会使构建变慢,因为它们每次都会搜索最新的构建。为了提高性能,我们需要固定版本。
只使用您需要的依赖项。例如,谷歌地图的依赖项,而不是导入compile ‘com.google.android.gms:play-services:8.4.0’,只需导入compile ‘com.google.android.gms:play-services-maps:8.4.0’。
将这些小调整运用于我们的项目中,能够在长期来看节省很多时间。我希望这些 Gradle 构建技巧能够帮助您改进项目的构建时间。