# Class BasePlugin

java.lang.Object
org.gradle.api.plugins.BasePlugin

All Implemented Interfaces:
  `Plugin<Project>`

public abstract class BasePlugin extends Object implements Plugin<Project>

A `Plugin` which defines a basic project lifecycle and some common convention properties.

Since:
  0.7
See Also:
  - Base plugin reference

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `ASSEMBLE_TASK_NAME`
  The assemble task name.
  `static final String`
  `BUILD_GROUP`
  The build group.
  `static final String`
  `CLEAN_TASK_NAME`
  The clean task name.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BasePlugin()`

- ## 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`

- ## Field Details

  - ### CLEAN_TASK_NAME

    public static final String CLEAN_TASK_NAME
    The clean task name.
    Since:
      0.7
    See Also:
      - Constant Field Values

  - ### ASSEMBLE_TASK_NAME

    public static final String ASSEMBLE_TASK_NAME
    The assemble task name.
    Since:
      0.8
    See Also:
      - Constant Field Values

  - ### BUILD_GROUP

    public static final String BUILD_GROUP
    The build group.
    Since:
      0.9
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### BasePlugin

    public BasePlugin()

- ## 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