Gradle Concepts: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 29: | Line 29: | ||
* <span id='Project'></span><span id='Gradle_Project'></span>[[Gradle Project|Project]], [[Gradle_Dependencies_and_Configurations|Dependencies and Configurations]], [[Gradle_Multi-Project_Builds#Overview|Multi-Project Builds]] | * <span id='Project'></span><span id='Gradle_Project'></span>[[Gradle Project|Project]], [[Gradle_Dependencies_and_Configurations|Dependencies and Configurations]], [[Gradle_Multi-Project_Builds#Overview|Multi-Project Builds]] | ||
* <span id='Task'></span><span id='Gradle_Task'></span>[[Gradle Task|Task]], [[Extending Gradle with a Custom Enhanced Task|Extending Gradle with a Custom Enhanced Task]] | * <span id='Task'></span><span id='Gradle_Task'></span>[[Gradle Task|Task]], [[Extending Gradle with a Custom Enhanced Task|Extending Gradle with a Custom Enhanced Task]] | ||
* <span id='Properties'></span><span id='Gradle_Properties'></span>[[Gradle | * <span id='Properties'></span><span id='Gradle_Properties'></span>[[Gradle Runtime and Project Configuration|Gradle Runtime and Project Configuration]] | ||
* <span id='Gradle_Instance'></span><span id='Gradle'></span>[[org.gradle.api.invocation.Gradle|Gradle Instance]], <span id='Gradle_Settings'></span><span id='Settings'></span>[[Gradle Settings|Settings Instance]] | * <span id='Gradle_Instance'></span><span id='Gradle'></span>[[org.gradle.api.invocation.Gradle|Gradle Instance]], <span id='Gradle_Settings'></span><span id='Settings'></span>[[Gradle Settings|Settings Instance]] | ||
* <span id='Logging'></span><span id='Gradle_Logging'></span>[[Gradle Logging|Logging]] | * <span id='Logging'></span><span id='Gradle_Logging'></span>[[Gradle Logging|Logging]] |
Revision as of 02:07, 5 October 2020
External
- API reference https://docs.gradle.org/current/javadoc/index.html
- DSL reference https://docs.gradle.org/current/dsl/
Internal
Overview
Gradle is a general-purpose build tool. It is primarily used to build Java and Groovy, but it can build other languages as well. The goal of a Gradle execution, also known as a Gradle build, is to execute a set of tasks, in sequence. Each build runs according to a well defined build lifecycle, during which Gradle instantiates a complex domain model of the project in memory: a Gradle instance, a Settings instance and the project itself.
Build Lifecycle
A build is a Gradle execution. Each build instantiates at least one project, which in turn contains tasks, and it can be configured and controlled with properties.
Initialization phase
Configuration phase. Tasks are instantiated and configured.
Execution phase. Task actions are executed.
Convention over Configuration
Subjects
- Project, Dependencies and Configurations, Multi-Project Builds
- Task, Extending Gradle with a Custom Enhanced Task
- Gradle Runtime and Project Configuration
- Gradle Instance, Settings Instance
- Logging
- Plugins
- Extending Gradle
- Gradle File Resolution