org.gradle.plugin.devel

## Class GradlePluginDevelopmentExtension

- java.lang.Object
- - org.gradle.plugin.devel.GradlePluginDevelopmentExtension

-     @Incubating
      public class GradlePluginDevelopmentExtension
      extends Object

  Configuration options for the `org.gradle.plugin.devel.plugins.JavaGradlePluginPlugin`.

  Below is a full configuration example. Since all properties have sensible defaults, typically only selected properties will be configured.

           apply plugin: "java-gradle-plugin"

           gradlePlugin {
               pluginSourceSet project.sourceSets.customMain
                testSourceSets project.sourceSets.functionalTest
           }

  Since:
    2.13
  See Also:
    `org.gradle.plugin.devel.plugins.JavaGradlePluginPlugin`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `GradlePluginDevelopmentExtension(SourceSet pluginSourceSet, SourceSet testSourceSet)`
    `GradlePluginDevelopmentExtension(SourceSet pluginSourceSet, SourceSet[] testSourceSets)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `SourceSet` | `getPluginSourceSet()` Returns the source set that compiles the code under test.
    `Set<SourceSet>` | `getTestSourceSets()` Returns the the source sets executing the functional tests with TestKit.
    `void` | `pluginSourceSet(SourceSet pluginSourceSet)` Provides the source set that compiles the code under test.
    `void` | `testSourceSets(SourceSet... testSourceSets)` Provides the source sets executing the functional tests with TestKit.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### GradlePluginDevelopmentExtension

          public GradlePluginDevelopmentExtension(SourceSet pluginSourceSet,
                                          SourceSet testSourceSet)

    - #### GradlePluginDevelopmentExtension

          public GradlePluginDevelopmentExtension(SourceSet pluginSourceSet,
                                          SourceSet[] testSourceSets)

  - ### Method Detail

    - #### pluginSourceSet

          public void pluginSourceSet(SourceSet pluginSourceSet)

      Provides the source set that compiles the code under test.
      Parameters:
        `pluginSourceSet` - the plugin source set

    - #### testSourceSets

          public void testSourceSets(SourceSet... testSourceSets)

      Provides the source sets executing the functional tests with TestKit.

      Calling this method multiple times with different source sets is not additive.

      Parameters:
        `testSourceSets` - the test source sets

    - #### getPluginSourceSet

          public SourceSet getPluginSourceSet()

      Returns the source set that compiles the code under test. Defaults to `project.sourceSets.main`.
      Returns:
        the plugin source set

    - #### getTestSourceSets

          public Set<SourceSet> getTestSourceSets()

      Returns the the source sets executing the functional tests with TestKit. Defaults to `project.sourceSets.test`.
      Returns:
        the test source sets