docs.gradle.org Open in urlscan Pro
2606:4700::6811:8025  Public Scan

Submitted URL: http://docs.gradle.org/
Effective URL: https://docs.gradle.org/current/userguide/userguide.html
Submission: On January 09 via api from US — Scanned from DE

Form analysis 0 forms found in the DOM

Text Content

Gradle
User Manual
 * 8.5 Open Community Menu
   7.3
   6.9.1
   5.6.4
   4.10.3
   All versions

 * Community
   Community Home
   Community Forums
   Community Plugins
 * Training
 * News
   Newsletter
   Blog
   Twitter
 * Develocity
 * github


OVERVIEW

 * What is Gradle?
 * The User Manual


RELEASES

 * All Releases
 * Release Notes
 * Compatibility Notes
 * Installing Gradle
 * 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
 * Migrating to Gradle
   * from Maven
   * from Ant
 * Gradle's Feature Lifecycle


RUNNING GRADLE BUILDS

 * Getting Started
 * Core Concepts
   * 1. Gradle Basics
   * 2. Gradle Wrapper Basics
   * 3. Command-Line Interface Basics
   * 4. Settings File Basics
   * 5. Build File Basics
   * 6. Dependency Management Basics
   * 7. Task Basics
   * 8. Plugins Basics
   * 9. Incremental Builds + Caching
   * 10. Build Scans
 * Tutorial
   * 1. Initializing the Project
   * 2. Running Tasks
   * 3. Understanding Dependencies
   * 4. Applying Plugins
   * 5. Exploring Incremental Builds
   * 6. Enabling the Build Cache
   * 7. Using Reference Materials
 * Gradle in the IDE
 * Continuous Build


AUTHORING GRADLE BUILDS

 * Getting Started
 * Learning the Basics
   * 1. Gradle Directories
   * 2. Multi-Project Builds
   * 3. Gradle Build Lifecycle
   * 4. Writing Settings Files
   * 5. Writing Build Scripts
   * 6. Using Tasks
   * 7. Writing Tasks
   * 8. Using Plugins
   * 9. Writing Plugins
 * 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
 * Other Topics
   * Gradle managed Directories
   * Working with Files
   * Working with Logging
   * Avoiding Traps
   * Configuring the Build Environment
   * Initialization Scripts
 * 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
   * Writing Gradle Task Types
   * Configuring Tasks Lazily
   * Avoiding Unnecessary Task Configuration
   * Developing Parallel Tasks
 * Developing Gradle Plugins
   * Starting Plugin Development
   * Designing Plugins
   * Implementing Plugins
   * Testing Plugins
   * Publishing Plugins
 * Other Developing Gradle Topics
   * Writing Custom Gradle Types and Service Injection
   * Shared Build Services
   * Dataflow Actions
   * Testing a Build with TestKit
   * Using Ant from Gradle


AUTHORING JVM BUILDS

 * Building Java & JVM projects
 * Testing Java & JVM projects
 * Java Toolchains
   * Toolchains for JVM projects
   * Toolchain Resolver Plugins
 * Managing Dependencies
 * JVM Plugins
   * Java Library Plugin
   * Java Application Plugin
   * Java Platform Plugin
   * Groovy Plugin
   * Scala Plugin


WORKING WITH DEPENDENCIES

 * Terminology
 * Learning the Basics
   * What is Dependency Management?
   * Declaring Repositories
   * Declaring Dependencies
   * Understanding Library and Application Differences
   * Viewing and Debugging Dependencies
   * Understanding Resolution
   * Verifying dependencies
 * Declaring Versions
   * Declaring Versions and Ranges
   * Declaring Rich Versions
   * Handling Changing Versions
   * Locking Versions
 * Controlling Transitives
   * Upgrading Versions
   * Downgrading and Excluding
   * Sharing Versions
   * Aligning Dependencies
   * Handling Mutually Exclusive Dependencies
   * Fixing Metadata
   * Customizing Resolution
   * Preventing accidental upgrades
 * Producing and Consuming Variants of Libraries
   * Declaring Capabilities of a Library
   * Modeling Feature Variants and Optional Dependencies
   * Understanding Variant Selection
   * Declaring Variant Attributes
   * Sharing Outputs of Projects
   * Transforming Artifacts
 * Publishing Libraries
   * Setting up Publishing
   * Understanding Gradle Module Metadata
   * Signing Artifacts
   * Customizing Publishing
   * Maven Publish Plugin
   * Ivy Publish Plugin


OPTIMIZING BUILD PERFORMANCE

 * Improving Performance of Gradle Builds
 * Gradle Daemon
 * File System Watching
 * Incremental Build
 * Using the Build Cache
   * Enabling and Configuring
   * Why use the Build Cache?
   * Understanding the Impact
   * Learning Basic Concepts
   * Caching Java Project
   * Caching Android Project
   * Debugging Caching Issues
   * Troubleshooting
 * Using the Configuration Cache
 * Inspecting Gradle Builds
 * Configuring Gradle
 * Project Properties
 * Gradle Networking


AUTHORING C++/SWIFT BUILDS

 * Building C++ projects
 * Testing C++ projects
 * Building Swift projects
 * Testing Swift projects


GRADLE ON CI

 * Jenkins
 * TeamCity
 * GitHub Actions
 * Travis CI


REFERENCE

 * Gradle DSLs and API
   * Javadoc
   * Groovy DSL Primer
   * Groovy DSL Reference
   * Kotlin DSL Primer
   * Kotlin DSL API
   * Groovy to Kotlin DSL Migration
   * Samples
 * Command-Line Interface
 * Gradle Wrapper
 * Core Plugins
 * Gradle & Third-party Tools
 * User Manual PDF


GRADLE USER MANUAL

version 8.5
Contents
 * Gradle Build Tool
 * Why Gradle?
 * Education
 * Support
 * Licenses


GRADLE BUILD TOOL

Gradle Build Tool is a fast, dependable, and adaptable open-source build
automation tool with an elegant and extensible declarative build language.

In this User Manual, Gradle Build Tool is abbreviated Gradle.


WHY GRADLE?

Gradle is a widely used and mature tool with an active community and a strong
developer ecosystem.

 * Gradle is the most popular build system for the JVM and is the default system
   for Android and Kotlin Multi-Platform projects. It has a rich community
   plugin ecosystem.

 * Gradle can automate a wide range of software build scenarios using either its
   built-in functionality, third-party plugins, or custom build logic.

 * Gradle provides a high-level, declarative, and expressive build language that
   makes it easy to read and write build logic.

 * Gradle is fast, scalable, and can build projects of any size and complexity.

 * Gradle produces dependable results while benefiting from optimizations such
   as incremental builds, build caching, and parallel execution.

Gradle, Inc. provides a free service called Build Scan® that provides extensive
information and insights about your builds. You can view scans to identify
problems or share them for debugging help.


SUPPORTED LANGUAGES AND FRAMEWORKS

Gradle supports Android, Java, Kotlin Multiplatform, Groovy, Scala, Javascript,
and C/C++.




COMPATIBLE IDES

All major IDEs support Gradle, including Android Studio, IntelliJ IDEA, Visual
Studio Code, Eclipse, and NetBeans.



You can also invoke Gradle via its command-line interface (CLI) in your terminal
or through your continuous integration (CI) server.


EDUCATION

The Gradle User Manual is the official documentation for the Gradle Build Tool.

 * Getting Started Tutorial — Learn Gradle basics and the benefits of building
   your App with Gradle.

 * Training Courses — Head over to the courses page to sign up for free Gradle
   training.


SUPPORT

 * Forum — The fastest way to get help is through the Gradle Forum.

 * Slack — Community members and core contributors answer questions directly on
   our Slack Channel.


LICENSES

Gradle Build Tool source code is open and licensed under the Apache License 2.0.
Gradle user manual and DSL reference manual are licensed under Creative Commons
Attribution-NonCommercial-ShareAlike 4.0 International License.

Docs
 * User Manual
 * DSL Reference
 * Release Notes
 * Javadoc

News
 * Blog
 * Newsletter
 * Twitter
 * Status Page

Products
 * Build Scan™
 * Build Cache
 * Develocity Docs

Get Help
 * Forums
 * GitHub
 * Training
 * Services

STAY UP-TO-DATE ON NEW FEATURES AND NEWS

By entering your email, you agree to our Terms and Privacy Policy, including
receipt of emails. You can unsubscribe at any time.


© Gradle Inc. 2023 All rights reserved.
gradle
Careers | Privacy | Terms of Service | Contact
This website uses cookies and other technology to provide you a more
personalized experience.Accept