Gradle Plugins TODEPLETE: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
No edit summary
Line 7: Line 7:
=Overview=  
=Overview=  


Most of Gradle's power comes from external plugins. A plugin is an extension to Gradle which configures the [[Gradle_Project_and_Build_Script#Overview|project]] it is applied to in some way, typically by adding plugin-specific [[Gradle_Dependencies_and_Dependency_Configurations#Dependency_Configuration|dependency configurations]], [[Gradle_Task#Overview|tasks]] and [[Gradle_Properties#Overview|properties]]. Plugins can be applied to Projects because Project implements [https://docs.gradle.org/current/dsl/org.gradle.api.plugins.PluginAware.html PluginAware].
Most of Gradle's power comes from external plugins. A plugin is an extension to Gradle which configures the [[Gradle_Project_and_Build_Script#Overview|project]] it is applied to in some way, typically by adding plugin-specific [[Gradle_Dependencies_and_Dependency_Configurations#Dependency_Configuration|dependency configurations]], [[Gradle_Task#Overview|tasks]] and [[Gradle_Variables_and_Properties#Overview|properties]]. Plugins can be applied to Projects because Project implements [https://docs.gradle.org/current/dsl/org.gradle.api.plugins.PluginAware.html PluginAware].


=Plugin Initialization=
=Plugin Initialization=

Revision as of 01:31, 20 May 2018

External

Internal

Overview

Most of Gradle's power comes from external plugins. A plugin is an extension to Gradle which configures the project it is applied to in some way, typically by adding plugin-specific dependency configurations, tasks and properties. Plugins can be applied to Projects because Project implements PluginAware.

Plugin Initialization

apply plugin:'java'

Plugin List

External Plugins

If a build requires external plugins that need to be downloaded dynamically, build.gradle allows for a special script block buildscript{...} to declare where to download those plugins from. If the plugin is unknown, Gradle will fail with:

Plugin with id 'nebula.ospackage-application' not found.

An external plugin is declared as follows:

buildscript {
    repositories {
        maven { url 'https://plugins.gradle.org/m2/' }
    }
  dependencies {
    classpath 'com.netflix.nebula:gradle-ospackage-plugin:4.3.0'
  }
}