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.