When building with gradle on a multi-project setup containing roughly 140 projects/libraries, the build time took 1 hour and 22 minutes. And i was using --parallel
. And our ANT build takes less than 20 minutes without parallel building.
Here is exactly what i did.
./gradlew clean
./gradlew build --parallel
I did a little testing it seems like the dexing is taking the longest amount of time. Is there a way to get the gradle process to re-use the stuff it has already dexed? If the libraries have already been built, it should re-use the already dexed libraries.
I saw the option --no-rebuild
, but when i run with that option it says the following
File '/path/to/project/build/libs/project.aar' specified for property 'bundle' does not exist.
I replaced the file path and project name with generic stuff.
Using Gradle 1.9-rc-3
Additional information(15 Jan 2014):
preDexDebug
and preDexRelease
took a VERY long time on each project. Much longer than any other task.
Progress(15 Jan 2014):
Ok, for now, i put preDexLibraries = false
into all of the build.gradle
files. However, i still would like to know a centralize place that i can put that entry and it affect all the other build.gradle
files.
However, now dexRelease
and dexDebug
are taking a long time. Is there any way that i can tell the build to only do the dexDebug
or dexRelease
and skip the other one?
Progress(15 Jan 2014):
Using assembleDebug
worked. However, it still seems like it is not re-using the already dexed libraries. Because dexing is still taking forever. It takes about a minute for each project. Is there a way to get gradle to re-use the already dexed libraries? Or is there a different reason why the build is still taking about an hour? Our ANT process takes less than 15 minutes.