ANT .
, , gnumake, nmake, jam ? , ANT . - shell-based: , , . , , , ; , , Unix, .
Makefiles . , . " tab?!!", ANT . , Jam , .
Ant . , ANT Java . , XML, . , .
Granted, this removes some of the expressive power inherent in the ability to build a shell command, for example find . -name foo
-exec rm {}, but it gives you the ability to be cross-platform — work anywhere and everywhere. And hey, if you really need to execute a shell, the ANT command has a task that allows various commands to be executed based on the OS running on.