We have already discussed that the Java plugin adds tasks and source sets to our Gradle project; however, we also get a lot of new properties that we can use. Custom properties of a plugin are set in a Convention
object of the org.gradle.api.plugins.Convention
type. A Convention
object is used by a plugin to expose properties and methods that we can use in our project. The Convention
object of the plugin is added to the convention
property of a project. The convention
property of a Gradle project is a container for all the Convention
objects from the plugins.
We can access the properties from the plugin's Convention
object directly as project properties or we can specify the complete path to the Convention
object of the plugin in order to get to a property or invoke a method.
For example, the sourceSets
property is a property of the Convention
object of the Java plugin. With the following task, showConvention
, we see the different ways that we have in order to access...