我有一个Android项目,大约有15个模块,每个模块都是一个单独的GitHub项目,其中一些模块具有相互依赖性,它基本上是一个带有14个组件(模块)的库的示例客户端。
每次进行一次更改并重新构建/运行时,使用28GB Ram的i7需要大约1分40秒
我已经尝试了很多方法来改善构建时间,包括本文中的提示,但我没有看到重大变化。 https://medium.com/@erikhellman/boosting-the-performance-for-gradle-in-your-android-projects-6d5f9e4580b6
看起来它遍历了所有模块,看看它们是否是最新的,这需要时间,但也需要编译和dexing。
有没有人知道如何改善这个?
我正在使用Gradle插件1.2.3,BuildTools 22.0.1和TaskWrapper 2.4
答案 0 :(得分:3)
之前我遇到了同样的问题,但谷歌在最后一次I / O宣布Gradle和android studio的性能有了很大改善。
但对我来说,这个单一的技巧对我有很大的帮助,并将时间减少了50%以上。
让Gradle脱机运行。
答案 1 :(得分:1)
下一个官方计划发布的Gradle插件是1.3。如果您通过Google I / O https://youtu.be/f7ihSQ44WO0?t=4m23s的演示文稿观看Gradle上的谈话,那么Google就会声称性能会有很大提升。 如果这些声明被证明是真的,那么我相信这将是缩短Android项目构建时间的最佳机会。
目前您可以使用最新的测试版
1.3.0-beta4
将其添加到您的build.gradle
文件中。示例如下:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0-beta4'
}
}
allprojects {
repositories {
jcenter()
}
}
可以在jcenter https://jcenter.bintray.com/com/android/tools/build/gradle/
上检查是否有任何新的测试版答案 2 :(得分:0)
如果每次运行项目时都不需要更新所有依赖项,我建议您将gradle配置为脱机工作。您可以在Setings窗口的Gradle选项卡中的Android Studio中执行此操作。我希望这可以帮到你。