--- Begin Message ---
I started qa-refactor with the intent of fixing latent bugs, an unintentional
benefit is significantly reduced processing times, contention and increased
scalability.
Changes in timing exposed more bugs.
Up until recently an occassional build failure would be experienced due to
classdep only partially writing a dep file, resulting in ClassNotFoundException
during testing. Knowing that RFC3986URLClassLoader is much faster resolving
classes than URLClassLoader, I thought, I'd try using it in ClassDep.
Guess what the result was? That's right lot's more ClassNotFoundException's
Qa-refactor is stable, but only when the build process succeeds without error.
I now must choose, do I waste time fixing a legacy build tool, or is it time
for a modular build to reduce long term maintenance and simplify, lowering the
bar for new users?
To me, going modular is a no brainer, but what tool should we use and why?
* Maven
* Gradle
* Ivy & ant
Please keep responses to the point, with any pro's and cons you have, eg:
Maven:
+widely adopted
+well structured dependency relationships
-dependency downloads.
Gradle:
-adoption
+Groovy build scripts
Ivy:
+uses ant, our existing build tool
-adoption
When complete, I suggest, we all can rank the relevance or importance of each
point raised (on a scale of -10 to 10) then add up for the final score to
decide the tool.
Regards,
Peter.
--- End Message ---