Gradle tutorials

Gradle is a powerful build tool, and when setup properly offers one of the most efficient ways to build a Java project. Follow these tutorial series to gain a solid understanding and learn the best-practice approach to common problems.

Many of these tutorials are available in video format, and come with full worked examples you can try out yourself by downloading the attached Git repository.

Get going with Gradle introductory course

If you’ve recently started with Gradle, this course will get you to a level where you can work with simple projects effectively. It covers the fundamentals, with a mixture of theory and practical lessons amounting to over 1 hour of free video content.

See full details and enrol over on the course page.

Get going with Gradle course

Gradle build script essentials

These tutorials will help you understand the core principles so you can work effectively with build scripts..

Anatomy of a Gradle build script: the key to understanding Gradle

Did you every look at a Gradle build script and end up scratching your head? In this article you’ll learn the most important components to make understanding build scripts a breeze.

Anatomy of a Gradle build file

✅ includes Git repo

Gradle implementation vs. compile dependencies

Understand properly the difference between these two dependency configurations.

Gradle implementation vs. compile

How to exclude Gradle dependencies

Some combinations of transitive dependencies can cause issues, but fortunately Gradle has several ways to exclude them. Learn why you’d want to exclude dependencies, as well as how to use each option.

Gradle exclude dependencies

✅ includes Git repo


Interacting with Gradle effectively

Learn how to work effectively with Gradle on the command line and beyond.

How to update Gradle

Understand the full details of updating Gradle, including how it works in the background and some of the version incompatibilities to bear in mind.

How to update Gradle

✅ includes video


gradle vs. gradlew – what’s the difference?

A common source of confusion is understanding the difference between the gradle and gradlew commands. Learn what each command does and when to use it.

gradle vs. gradlew difference

What is the Gradle wrapper and why should you use it?

The Gradle wrapper is an important script which forces your project to use a specific Gradle version. Discover how to make the best use of it, including setting up new projects, executing builds, and upgrading it.

What is the Gradle wrapper

✅ includes video

5 tips for using Gradle with IntelliJ IDEA 2019

Discover how to make the most of your IDE when using Gradle, to get your work done quicker and more efficiently.

5 tips for using Gradle

✅ includes video


Building production-ready projects with Gradle

Learn how to build and maintain larger and more complex projects, with these more advanced Gradle techniques.

How to use Gradle api vs. implementation dependencies with the Java Library plugin

Discover how to properly build libraries which will be consumed by another project, with the Java library plugin.

Gradle api vs implementation dependencies

✅ includes video + Git repo

Annotation processors in Gradle with the annotationProcessor dependency configuration

Annotation processing enables the generation of additional files during Java compilation. Learn how Gradle abstracts away the complexity of passing the correct compile options with the annotationProcessor dependency configuration

✅ includes video + Git repo

Gradle project properties best practices

Learn how to pass in and use Gradle project properties to more effectively control the execution of your build.

Gradle project properties best practices

✅ includes video

All about the Gradle task graph

A powerful Gradle feature is its ability to setup dependencies between tasks, creating a task graph. Learn all about the task graph, how to add tasks to it, and how to print it out.

All about the Gradle task graph

Gradle dependency tree

In this article you’ll learn how to view the dependency tree, so you can understand fully how you project is built and resolve common issues.

Gradle dependency tree

5 reasons to switch to the Gradle Kotlin DSL

Gradle versions 5.0+ feature the Kotlin DSL, where you define your build script using the Kotlin language from JetBrains. The Groovy DSL is still more common, but here are 5 reasons to switch to the Kotlin DSL.

Gradle Kotlin DSL

✅ includes video


Testing with Gradle

Test your application making the most of Gradle’s productivity enhancing features.

Running integration tests in Gradle

Your Gradle project can easily be setup to run integration tests using a specific Gradle task and source directory. This separates the integration tests from unit tests, making the project easier to understand and helping developers to work more productively.

Running integration tests in Gradle

✅ includes Git repo



Getting to grips with Gradle integrations

Understand how to use some popular Gradle integrations with these tutorials.

Unleashing the Spring Boot Gradle plugin

Learn how to use the Spring Boot Gradle plugin to more effectively build a Spring Boot project, including customising it your specific requirements.

Unleashing the Spring Boot Gradle plugin

✅ includes video + Git repo

How to secure your Gradle credentials In Jenkins

Discover how to securely setup credentials for your private repository using Jenkins credentials, and inject them into your Gradle builds.

How to secure your Gradle credentials in Jenkins

✅ includes video + Git repo

Automating Docker builds with Gradle

Discover the best way to automate Docker in your project, allowing developers and CI servers to easily build images and run containers.

Automating Docker Builds With Gradle

✅ includes Git repo


Leveraging the full power of Gradle

These advanced tutorials lift the covers on Gradle, showing you how to effectively control builds and reuse build logic.

Gradle task inputs and outputs

Declaring Gradle task inputs and outputs is essential to use the incremental build feature, improving the performance of your build. It also follows best practice, allowing you to create more complex projects.

Gradle task inputs & outputs

✅ includes Git repo

Introduction to writing Gradle plugins

Most Gradle builds use at least a few external plugins to add extra functionality. So why not make use of this powerful mechanism by learning how to encapsulate your own Gradle build logic into a plugin?

Introduction to Gradle plugins

✅ includes video + Git repo

Gradle lifecycle evaluation order for multi-project builds

Multi-project builds in Gradle provide a better way to organise your project. Learn about the evaluation order of these types of project, and how to set things up to work the way you want them to.

Gradle lifecycle evaluation order for multi-project builds

✅ includes video + Git repo

How to do a Maven to Gradle migration on a Java Spring Boot project

Discover the 8 steps to migrate your Java Spring Boot project from Maven to Gradle, to get the job done as easily as possible.

Maven to Gradle migration

✅ includes video + Git repo

More articles about Gradle

Scroll to top