17.4K
9.7K
+ 1
254

What is Gradle?

Gradle is a build tool with a focus on build automation and support for multi-language development. If you are building, testing, publishing, and deploying software on any platform, Gradle offers a flexible model that can support the entire development lifecycle from compiling and packaging code to publishing web sites.
Gradle is a tool in the Java Build Tools category of a tech stack.
Gradle is an open source tool with 17.1K GitHub stars and 4.8K GitHub forks. Here’s a link to Gradle's open source repository on GitHub

Who uses Gradle?

Companies
1285 companies reportedly use Gradle in their tech stacks, including Netflix, Udemy, and CRED.

Developers
11533 developers on StackShare have stated that they use Gradle.

Gradle Integrations

BrowserStack, SonarQube, Liquibase, Flyway, and Bitrise are some of the popular tools that integrate with Gradle. Here's a list of all 39 tools that integrate with Gradle.
Pros of Gradle
110
Flexibility
51
Easy to use
47
Groovy dsl
22
Slow build time
10
Crazy memory leaks
8
Fast incremental builds
5
Kotlin DSL
1
Windows Support
Decisions about Gradle

Here are some stack decisions, common use cases and reviews by companies and developers who chose Gradle in their tech stack.

Joshua Dean Küpper
CEO at Scrayos UG (haftungsbeschränkt) · | 2 upvotes · 339.1K views

All Java-Projects are compiled using Apache Maven. We prefer it over Apache Ant and Gradle as it combines lightweightness with feature-richness and offers basically all we can imagine from a software project-management tool and more. We're open however to re-evaluate this decision in favor of Gradle or Bazel in the future if we feel like we're missing out on anything.

See more
Needs advice
on
Checkstyle Checkstyle FindBugsFindBugs
and
SonarLintSonarLint

In our project, we want to integrate the code checker plugin. Which one should we choose, we are using Java, Groovy, Gradle Languages.

Please Advise, thanks If any other plugin also suggest.

See more
Hajed Khlifi
Needs advice
on
DockerDockerGradleGradle
and
JavaJava

Hi, I'm working on dockerizing a heavy Java EE application where the process of installation requires a complex process maintained by a Gradle project we've developed to install, configure and customize specific jar files to generate a runnable server application at the end for the user. I'm new to Docker. As I said, the problem is that we have got a long process to install the app. The first alternative pop into my head is to put the installer Gradle project in the docker image and manage stateful data using the writable layer (in this case, I need to add Gradle too and the writable layer will be too heavy). Any advice! Thank you

See more
Needs advice
on
GradleGradle
and
SBTSBT

What are the advantages of using Gradle over SBT for Scala projects? Currently, I am doing POC between Gradle and SBT.

See more
Needs advice
on
fastlanefastlaneGradleGradle
and
Apache MavenApache Maven

Hi, I am doing automation for mobile app (iOS & Android). Currently, I am using Apache Maven build tool. Can someone tell me which out of these 3 tools is the best? (fastlane, Gradle, Maven). Apart from that, we are using CircleCI.

See more

Gradle's Features

  • Declarative builds and build-by-convention
  • Language for dependency based programming
  • Structure your build
  • Deep API
  • Gradle scales
  • Multi-project builds
  • Many ways to manage your dependencies
  • Gradle is the first build integration tool

Gradle Alternatives & Comparisons

What are some alternatives to Gradle?
Apache Ant
Ant is a Java-based build tool. In theory, it is kind of like Make, without Make's wrinkles and with the full portability of pure Java code.
Jenkins
In a nutshell Jenkins CI is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project.
Groovy
It is a powerful multi-faceted programming language for the JVM platform. It supports a spectrum of programming styles incorporating features from dynamic languages such as optional and duck typing, but also static compilation and static type checking at levels similar to or greater than Java through its extensible static type checker. It aims to greatly increase developer productivity with many powerful features but also a concise, familiar and easy to learn syntax.
Apache Maven
Maven allows a project to build using its project object model (POM) and a set of plugins that are shared by all projects using Maven, providing a uniform build system. Once you familiarize yourself with how one Maven project builds you automatically know how all Maven projects build saving you immense amounts of time when trying to navigate many projects.
Bazel
Bazel is a build tool that builds code quickly and reliably. It is used to build the majority of Google's software, and thus it has been designed to handle build problems present in Google's development environment.
See all alternatives

Gradle's Followers
9677 developers follow Gradle to keep up with related blogs and decisions.