构建我的Android应用程序需要大约90秒(“快速”),对于我的代码的每次更新最多需要3分钟。这是一个完全浪费时间,因为它真的,我假设一个解决方案必须在可及范围内。我试图调查这个问题,并发现不同的博客帖子和SO答案,其中大部分我已经尝试过。Gradle在transformClassesWithDexForDebug上构建变慢
- 我有gradle.properties与org.gradle.deamon文件=真
- 我在Android Studio中运行与摇篮Prefence进行离线工作(改善,但仍慢)
- 我的命令运行行(这是更快,但仍慢)
- 在的build.gradle,defaultConfig,我multiDexEnabled设置为false
- 在的build.gradle,dexOptions,我必须设置为false
- 在gradle这个-包装preDexLibraries。属性我获取最近的gradl这似乎需要很长时间E文版(2.8)(该显著速度的变化发生在2.4)
的过程中,总建造时间大约85%是:应用程序:transformClassesWithDexForDebug
那是什么进程其实在做什么我可以找到那些崩溃的人,但它对我来说很好,除了它需要很多时间。我是否需要它,因为我现在不需要Dex?
另外,我有13个依赖项和3个testCompile依赖项。我已经指出了具体的游戏包,所以我不编译我不需要的东西。如果我理解正确,gradle正在构建每个项目构建的所有这些库。如果这是正确的,有没有办法跳过?我可以自己将它们构建为封装库,并将它们包含在内,而不需要每次都处理它们?这可能会让我在将来对依赖关系进行更改时失去一些灵活性,但在这一点上,我觉得我在轻松等待gradle时每天会失去一个多小时。我不确定灵活性对我来说是否值得。
我期待得到关于如何改进我的构建过程的任何指示。先谢谢你。
什么宽慰的是,有一个人在那里在完全相同的情况,因为我现在!在此期间你有任何进展吗?谢谢! – sjkm
自从我发布这篇文章并尝试了我遇到的每一个建议,并取得了不同程度的成功之后,这已经有相当长的一段时间了。直到Android Studio 2.1发布为@ markdb314时,才真正将构建速度提升到了可以接受的程度。 尽管之前可能有售,但是由于这个版本很明显在做dex-step的过程。这大大降低了我的平均时间20-30秒。 –
只是好奇,你使用新的数据绑定框架? – tir38