
Food YES, build tool NO
I've spent a couple afternoons trying to penetrate the docs on jam because its what XCode uses under the hood. I ultimately concluded that either Apple is using it very stupidly (always more than likely) or it failed the "easy to understand while staying flexible" test.
Do you really want to rewrite a build system that works now? Personally I'd rather have a root canal.
Ant is OK in the java world although it does no dependency checking on its own. This is left up to the task writer. Consequently deeply dependent builds can be kind of slow because each task will get a chance to look and see if it wants to do anything. So above a certain size of project it becomes ponderous to make a small change. Make is better at pruning this way I think and I don't find it hard to use at all.
OTOH, java confounds make because make figures out its dependencies at the beginning, then sets out to build stuff, but javac does its own dependency checking and you end up with double compiles using make. Harmless but slower.
Tough call - but I'm fairly sure you'll be miserable whichever way you go.
"Whenever you find you are on the side of the majority, it is time to pause and reflect" --Mark Twain
"The significant problems we face cannot be solved at the same level of thinking we were at when we created them." --Albert Einstein
"This is still a dangerous world. It's a world of madmen and uncertainty and potential mental losses." --George W. Bush
Food YES, build tool NO
I've spent a couple afternoons trying to penetrate the docs on jam because its what XCode uses under the hood. I ultimately concluded that either Apple is using it very stupidly (always more than likely) or it failed the "easy to understand while staying flexible" test.
Do you really want to rewrite a build system that works now? Personally I'd rather have a root canal.
Ant is OK in the java world although it does no dependency checking on its own. This is left up to the task writer. Consequently deeply dependent builds can be kind of slow because each task will get a chance to look and see if it wants to do anything. So above a certain size of project it becomes ponderous to make a small change. Make is better at pruning this way I think and I don't find it hard to use at all.
OTOH, java confounds make because make figures out its dependencies at the beginning, then sets out to build stuff, but javac does its own dependency checking and you end up with double compiles using make. Harmless but slower.
Tough call - but I'm fairly sure you'll be miserable whichever way you go.
"Whenever you find you are on the side of the majority, it is time to pause and reflect" --Mark Twain
"The significant problems we face cannot be solved at the same level of thinking we were at when we created them." --Albert Einstein
"This is still a dangerous world. It's a world of madmen and uncertainty and potential mental losses." --George W. Bush