Apache Ant uses build.xml file to describe build process and it is implemented in java . ANT first version released in 2000 and soon became one of the most popular build tool at that time .Ant was intended to be used in place of unix make process which was not platform independent. ANT is an abbreviation for Another Neat Tool . Ant has several tasks available which you can use according to your project's requirements and it is flexible enough , so that you can create your own custom tasks . The biggest drawback of ANT is the use of xml file , which might become complex and verbose .
Apache MAVEN :
Apache Maven is based on project object model also known as POM. The biggest different between Maven And Ant is , Maven allowed the dependency to be downloaded over the internet . In ANT , we have to included each and every dependency by ourselves , Maven reduced the burden . It is also uses the pom.xml file for describing the build process , but the structure is completely different from Ant's build.xml . It still has the same problem of bulky and large xml file in case of big projects .
Gradle has combined the features of Ant and Maven with its own Domain Specific Langauge based on Groovy. It does not uses xml for describing the build process . Gradle is slowly getting popular .
Buildr is based on Ruby's build system Rake, and uses Ruby as a scripting language. It provides greater flexibility as you can write your custom Ruby code before and after standard buildr targets .