


Gradle was designed for multi-project builds, which can grow to be large. Gradle uses a directed acyclic graph to determine the order in which tasks can be run, through providing dependency management. Gradle builds on the concepts of Apache Ant and Apache Maven, and introduces a Groovy- and Kotlin-based domain-specific language contrasted with the XML-based project configuration used by Maven. It also collects statistical data about the usage of software libraries around the globe.

Supported languages include Java (as well as Kotlin, Groovy, Scala), C/ C++, and JavaScript. It controls the development process in the tasks of compilation and packaging to testing, deployment, and publishing. Gradle is a build automation tool for multi-language software development.
