Hi,
We've chosen gradle for our new build system and we've started the journey from
maven 1 (!) to gradle.
We have a very granular structure at the moment, with about 80-90 leaf projects
producing output artifacts (and obviously lots of interdependencies going on +
lots of 3rd party dependencies).
In the short term I don't think restructuring our project structure and
associated directory structure is an option. In the longer term it will be
consolidated.
I've ported about 40 of the simpler projects to one large gradle multiproject
build. However there is starting to be a fairly substantial overhead in
"initialization" before actually doing anything in terms of building.
Doing gradle -t on a subprojsct now takes around 10,5 seconds, same for gradle
clean.
I've tried the same on the gradle branch (Im obviously aware its work in
progress) using a gradle daemon. gradle -t on a subproject here takes about 6,5
seconds (after running it 2 times first:-
Little more background;
- I'm currently using a locally installed nexus repository for all my third
party dependencies
- I'm running cygwin on windows xp
- Using gradle 0.9 rc1
>From running gradle -t -i, I've made the following observations from the log;
- Evaluate root project uses about 2 seconds
- Summing up resolution report resolve is almost 4 seconds (typically something
like "resolution report :: resolve 266ms :: artifacts dl 0ms")
The questions;
1) Should I assume that the overhead will get exponentially worse if adding the
remaining 40-50 subprojects ?
2) Anything I could do to reduce the overhead whilst still getting the benefits
of incremental builds (ie without having to resort to splitting into many more
multiprojects?)
3) When can I hope for a working version of 0.9.1 with gradle daemon working on
windows ? :-)
Any pointers would be appreciated.
cheers
Magnus