Gradle Plugin Concepts: Difference between revisions
Line 1: | Line 1: | ||
=External= | =External= | ||
* https://docs.gradle.org/current/userguide/plugins.html | * https://docs.gradle.org/current/userguide/plugins.html | ||
* Gradle Plugin Portal: https://plugins.gradle.org/ | |||
=Internal= | =Internal= |
Revision as of 04:10, 24 September 2020
External
- https://docs.gradle.org/current/userguide/plugins.html
- Gradle Plugin Portal: https://plugins.gradle.org/
Internal
TODO
Overview
A Gradle plugin is packaged code that uses the Gradle API to provide additional functionality and extend Gradle core. A Gradle plugin may introduce new tasks, new domain objects, conventions, project layouts and patterns for a specific problem domain. Plugins may even extend the core objects. Introducing their own conventions, plugins are "opinionated", encouraging the user to do things in a certain way. However, well written plugins must provide means to change the default conventions and make it work for non-standard projects.
Script Plugin
A script plugin is simply a file containing Gradle DSL code and possibly in-line Java and Groovy code. It can be thought as an "include file".
apply from: 'example.gradle'
Conventionally, the file has the ".gradle" extension, but this is not mandatory. The file can be loaded from the local filesystem, or from a remote location. Filesystem location is relative to the project directory. Remote locations are specified with HTTP URLs.
Binary Plugin
Using a Plugin
Plugin Extension
A plugin is a typical use case for an extension.
Standard Plugins
A standard plugin ships with the Gradle runtime.