Java Build Tools

Early in Java's lifetime we got Ant, which is a very good build tool, however it is XML based and everything needs to be configured. Then Maven came along and adopted a lot of conventions, meaning we needed less configuration, and we also got central repositories. Next came Gradle, which, like Maven, favours convention over configuration, but it also takes flexibility to the next level with two DSLs (Domain Specific Language), namely Groovy and Kotlin.

If you are starting something new, then go with Maven or Gradle. Where Maven is better for simpler builds and Gradle gives you a lot more power and flexibility as well as support for other languages.