# Class JavaGradlePluginPlugin

java.lang.Object
org.gradle.plugin.devel.plugins.JavaGradlePluginPlugin

All Implemented Interfaces:
  `Plugin<Project>`

@Incubating public class JavaGradlePluginPlugin extends Object implements Plugin<Project>
A plugin for building java gradle plugins. Automatically generates plugin descriptors. Emits warnings for common error conditions.

Provides a direct integration with TestKit by declaring the `gradleTestKit()` dependency for the test compile configuration and a dependency on the plugin classpath manifest generation task for the test runtime configuration. Default conventions can be customized with the help of `GradlePluginDevelopmentExtension`. Integrates with the 'maven-publish' and 'ivy-publish' plugins to automatically publish the plugins so they can be resolved using the `pluginRepositories` and `plugins` DSL.

## Constructor Summary

Constructors
Constructor
Description
`JavaGradlePluginPlugin()`

## Method Summary

Modifier and Type
Method
Description
`void`
`apply(Project project)`
Apply this plugin to the given target object.

### Methods inherited from class Object

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

## Constructor Details

### JavaGradlePluginPlugin

public JavaGradlePluginPlugin()

## Method Details

### apply

public void apply(Project project)
Description copied from interface: `Plugin`
Apply this plugin to the given target object.

Specified by:
  `apply` in interface `Plugin<Project>`
Parameters:
  `project` - The target object