【发布时间】:2015-11-27 00:46:59
【问题描述】:
在过去的几天里,我一直在努力改善我们项目的构建时间,但没有成功。我不介意必须等待 1 分钟 40 秒才能进行干净构建,但如果我在单个 java 文件中插入一行,我将获得与干净构建相同的构建时间。我一定是做错了什么,但我根本找不到任何文档或堆栈溢出问题来指出我正确的方向。我设法收集了一堆信息,我将集中在此处,希望对这个主题有更好理解的人解释我为什么会得到这些糟糕的构建时间。
这里是:
-
我知道我的 build.gradle 文件中的这个选项是我所寻求的。
android { dexOptions { incremental true } ...光荣的增量构建。但是,这显然对我不起作用,因为我的项目使用 multidex 功能与 Lollipop 之前的 android 版本兼容。
前去救援!使用 Proguard,我可以缩小我的可执行文件并删除所有未使用的方法。我在使用 proguard minify 时遇到了一些错误,但能够正确设置并使其正常工作。伟大的!每次构建需要大约 20 秒的 Dex 生成。不幸的是,没有什么是免费的,proguard gradle 任务大约需要 2 分 50 秒才能运行。比我最初的情况还要糟糕。
这个问题有解决办法吗?
【问题讨论】:
-
在全局 Gradle 设置中启用
offline work有帮助吗? -
不幸的是,没有。在我的构建过程中真正耗时的任务是 dex 生成。获取依赖项实际上非常快。
标签: android android-studio gradle proguard android-proguard