“Gradle is advanced, open-source, a general-purpose build automation system that built over ANT, Ivy and Maven repositories”.
Points to Remember
- Gradle initial version introduced in 2007.
- Gradle stable current release 6.3 on March 24, 2020
- Gradle official website https://gradle.org/
- Gradle API is designed using Groovy Language specifically for Java projects.
- Gradle supports groovy based DSL (Domain Specific Language) over XML.
- Gradle is a solution to resolve the dependency management issue of Maven.
Features of Gradle
Gradle provides the following features:
- Open source: Gradle is a free open source project, licensed under the ASL (Apache Software License).
- Groovy: Gradle’s build script and API are written in Groovy. Gradle is designed towards being used as a language, not as a rigid framework.
- Language for dependency-based programming: Gradle provides a declarative language for a general-purpose task graph, which you can be leverage in your build.
- Gradle API: These APIs allows to monitor, customize configuration and execution behavior to its core functionality
- Declarative builds: Gradle is Domain Specific Language (DSL) based on Groovy language. It provides a declarative language element that provides build-by-convention support for Java, OSGI, Groovy, Scala OSGI, and Web.
- Structure your build: Gradle allows implement common design principles which will give a well-structured and easily maintained comprehensible build.
- Gradle Wrapper: It is useful for the continuous integration of servers and helps to execute Gradle builds on machines where Gradle is not installed.
- Gradle scales: Gradle is easily capable of making builds for a single project to enterprise application of multiple projects.
- Multi-Project Builds: Gradle is capable of doing multi-project builds and supports partial builds also. If you build a project Gradle takes care of building all dependent subprojects.
- Gradle is the first build integration tool: Gradle fully supported for ANT tasks, Maven and lvy repository for publishing and retrieving dependencies. Gradle provides a converter for Maven pom.xml to the Gradle script.
- Ease of migration: Gradle can easily adapt to any structure Therefore you can always develop your Gradle build script in the same branch where you want to build.