我的Gradle构建时间通常在12秒左右,但经过约10-20次构建后,它会突然开始呈指数增长:30秒、50秒、2分钟、5分钟等,最终导致内存溢出。
正常构建:
:app:compileDev21DebugJavaWithJavac 4.783s
:app:transformClassesWithRealmTransformerForDev21Debug 3.011s
:app:transformClassesWithDexForDev21Debug 2.133s
:app:compileRetrolambdaDev21Debug 1.325s
:app:packageDev21Debug 0.997s
:app:processDev21DebugResources 0.703s
在进行了10到20次这样的操作后,它开始增加:
:app:transformClassesWithDexForDev21Debug 39.172s
:app:compileDev21DebugJavaWithJavac 34.221s
:app:packageDev21Debug 9.922s
:app:transformClassesWithRealmTransformerForDev21Debug 8.353s
:app:compileRetrolambdaDev21Debug 3.120s
:app:fabricGenerateResourcesDev21Debug 1.376s
您可以看到,每个任务的时间都在增加。
我使用的是Android Studio 2.2.2版本,但自从3个版本前以来就一直遇到这个问题。Gradle版本号为2.14.1。可能与我们的项目有关。我使用Mac电脑,与我合作的同事在Windows电脑上也遇到了相同的问题。如果我关闭AS,杀掉Java进程,然后再重新启动AS,这个问题会暂时解决。
目前我还没有使用Jack编译器。
需要明确的是:我的构建时间并不是普遍缓慢的,13秒是可以接受的。这不是所有“构建时间慢”的问题的重复。只有在进行10-20次构建后,每次构建所需的时间呈指数级增长。
更新:将Gradle构建设置为“离线”并没有帮助。使用“gradle-3.1-all.zip”(在grade-wrapper.properties中的distributionUrl)也没有帮助。
是否有人遇到过这个问题并知道解决方法?
gradle(w) assemble
后出现的吗?还是只在AS中出现?(请编辑问题并附上答案) - petey