我尝试过构建它:
每次都需要40秒左右。如果我改变了什么并不重要。在“gradle clean”之后构建它需要> 50s。
我希望我做错了什么。 Eclipse / ant可以在< 10s。
中构建WITH CHANGES的连续构建任何帮助如何使这个< 10s赞赏。 是的,我们有很多模块,一些jar库,一些maven依赖。仍然不明白为什么两个连续的版本没有变化需要> 40s。
使用的Gradle:2.2.1 Android studio:不太相关,通常仅使用Gradle构建它。
编辑:添加一些分析日志。
:app:dexProjDebug 22.541s
:app:shrinkProjDebugMultiDexComponents 4.279s
:app:compileProjDebugJava 3.478s
:app:packageProjDebug 2.591s
:app:processProjDebugResources 2.590s
:app:packageAllProjDebugClassesForMultiDex 2.536s
:app:createProjDebugMainDexClassList 2.126s
答案 0 :(得分:1)
即使对于包含源代码的库项目,您也需要正确定义输入和输出。 (Gradle Documentation)。第二次重建时,您是否收到了UP-TO-DATE消息?
答案 1 :(得分:1)
如果您没有更改其他模块,则可以使用gradlew :app:build
构建应用程序。这将消除Gradle花费在构建其他模块上的时间。您也可以使用gradlew :moduledirectoryname:build
单独构建任何模块。如果您需要构建一个模块和应用程序,您可以立即执行这两个任务,以避免两次通过Gradle的配置阶段:gradlew :app:build :moduledirectoryname:build
答案 2 :(得分:1)
如果可能,请更新到Gradle 2.4。它的速度要快得多(声称20-40%)。
答案 3 :(得分:1)
最重要的构建时间减少器之一是preDex任务。检查preDex是否在您的构建中运行。它会在您第一次运行时增加构建时间,但会大大减少后续构建中的构建时间,因为大多数SDK和库都已被定义。但请注意,它不会在某些条件下运行,例如如果你使用multidex。
Btw Google非常了解Gradle和Android Studio的构建时间,并将在即将发布的版本中引入重大改进,包括Jack和Jill,它将允许从源代码直接编译到dex。您可以尝试使用它们进行试验 - 请参阅此处:http://tools.android.com/tech-docs/jackandjill。
还值得观看最近的Google I / O视频:https://youtu.be/f7ihSQ44WO0?t=327
答案 4 :(得分:0)
下载Genymotion模拟器。运行Android应用程序非常快速和好。它会为你节省很多时间。 这是链接 - GenyMotionDownload