• Theme
  • Build Tool
    Releases
    Features
    9.0.0 Highlights
    8.0.0 Highlights
    Gradle vs Maven
  • Learn
    User Manual
    YouTube Channel
    Events and Webinars
  • Support
    Community Slack
    Community Forums
    Professional Services
    Security Subscription
  • News
    Newsletter
    Blog
  • About
    About Us
    Contact Us
    Gradle Fellowship
  • Develocity
  • GitHub

Gradle User Manual

  • Getting Started

Gradle Releases

  • All Releases
  • Release Notes
  • Installing Gradle
  • Upgrading Gradle
    • Within versions 9.x.y
    • To version 9.0.0
    • Within versions 8.x
    • From version 7.x to 8.0
    • From version 6.x to 7.0
    • From version 5.x to 6.0
    • From version 4.x to 5.0
  • Migrating to Gradle
    • from Maven
    • from Ant
  • Compatibility Notes
  • Gradle's Feature Lifecycle

Gradle Fundamentals

  • Learning Gradle Basics
    • 1. Core Concepts
    • 2. Wrapper Basics
    • 3. CLI Basics
    • 4. Settings File Basics
    • 5. Build File Basics
    • 6. Dependencies Basics
    • 7. Tasks Basics
    • 8. Caching Basics
    • 9. Plugins Basics
    • 10. Build Scan Basics
  • Writing Build Scripts
    • 1. Anatomy of a Gradle Build
    • 2. Structuring Multi-Project Builds
    • 3. Gradle Build Lifecycle
    • 4. Writing Build Scripts
    • 5. Gradle Managed Types
    • 6. Declaring Dependencies
    • 7. Creating and Registering Tasks
    • 8. Working with Plugins
  • Creating Plugins
    • 1. Plugin Introduction
    • 2. Pre-Compiled Script Plugins
    • 3. Binary Plugins
    • 4. Developing Binary Plugins
    • 5. Testing Binary Plugins
    • 6. Publishing Binary Plugins

Gradle Tutorials

  • Beginner Tutorial
    • 1. Initializing the Project
    • 2. Running Tasks
    • 3. Understanding Dependencies
    • 4. Applying Plugins
    • 5. Exploring Incremental Builds
    • 6. Enabling the Build Cache
  • Intermediate Tutorial
    • 1. Initializing the Project
    • 2. Understanding the Build Lifecycle
    • 3. Multi-Project Builds
    • 4. Writing the Settings File
    • 5. Writing a Build Script
    • 6. Writing Tasks
    • 7. Writing Plugins
  • Advanced Tutorial
    • 1. Initializing the Project
    • 2. Adding an Extension
    • 3. Creating a Custom Task
    • 4. Writing a Unit Test
    • 5. Adding a DataFlow Action
    • 6. Writing a Functional Test
    • 7. Using a Consumer Project
    • 8. Publish the Plugin

Gradle Best Practices

  • Introduction
  • Best Practices
    • Best Practices Index
    • General Best Practices
    • Best Practices for Structuring Builds
    • Best Practices for Dependencies
    • Best Practices for Tasks
    • Best Practices for Performance
    • Best Practices for Security
    • Best Practices for Testing

Gradle DSLs and APIs

  • Groovy
    • Groovy DSL Primer
    • Groovy DSL Reference
  • Kotlin
    • Kotlin DSL Primer
    • Kotlin DSL Reference
    • Migration from Groovy
  • General
    • Java API
    • Public APIs
    • Default Script Imports

Gradle Reference

  • Runtime and Configuration
    • Command-Line Interface
    • Logging and Output
    • Gradle Wrapper
    • Gradle Daemon
    • Gradle Directories
    • Build Configuration
    • Build Lifecycle
    • Build Scan