• 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

Introduction

  • What is Gradle?
  • Gradle Enterprise

What is new?

  • Release Notes
  • Upgrading Gradle
    • version 8.X to latest
    • version 7.X to 8.0
    • version 6.X to 7.0
    • version 5.X to 6.0
    • version 4.X to 5.0
    • Gradle's Feature Lifecycle
  • Compatibility Notes

Quick Start

  • Getting Started
  • Installing Gradle
  • Samples
  • Migrating to Gradle
    • from Maven
    • from Ant
  • Gradle DSLs and API
    • Javadoc
    • Groovy DSL Primer
    • Groovy DSL Reference
    • Kotlin DSL Primer
    • Kotlin DSL API
    • Groovy to Kotlin DSL Migration
  • Troubleshooting Builds

Running Gradle Builds

  • Command-Line Interface
  • The Gradle Wrapper
  • Customizing Execution
    • Configure the Build Environment
    • Gradle Daemon
    • File System Watching
    • Initialization Scripts
  • Executing Multi-Project Builds

Authoring Gradle Builds

  • Learning the Basics
    • Understanding the Build Lifecycle
    • Gradle-managed Directories
    • Writing Build Scripts
    • Learning More About Build Scripts
    • Using Gradle Plugins
    • Working with Files
    • Working with Logging
    • Avoiding Traps
  • Structuring Individual Builds
    • Creating a Basic Multi-Project Build
    • Declaring Dependencies between Subprojects
    • Sharing Build Logic between Subprojects
    • Fine Tuning the Project Layout
    • Understanding Configuration and Execution
  • Structuring Software Products
    • Structuring Large Projects
    • Tweaking Project Structure
    • Composing Builds
  • Authoring Sustainable Builds
    • Organizing Build Logic
    • Following Best Practices
  • Developing Gradle Tasks
    • Authoring Tasks
    • Incremental build
    • Writing Gradle Task Types
    • Configuring Tasks Lazily
    • Avoiding Unnecessary Task Configuration
    • Developing Parallel Tasks
  • Developing Gradle Plugins
    • Starting Plugin Development
    • Designing Plugins