org.gradle.api.plugins

## Interface PluginAware

- All Known Subinterfaces:
    Gradle, Project, Settings

      public interface PluginAware

  Objects a `Plugin` can be applied to.

  For more on writing and applying plugins, see `Plugin`.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `apply(Closure closure)` Configures this object using plugins or scripts.
    `void` | `apply(Map<String,?> options)` Configures this Object using plugins or scripts.
    `PluginContainer` | `getPlugins()` Returns the plugins container for this object.

- - ### Method Detail

    - #### getPlugins

          PluginContainer getPlugins()

      Returns the plugins container for this object. The returned container can be used to manage the plugins which are used by this object.
      Returns:
        the plugin container. Never returns null.

    - #### apply

          void apply(Closure closure)

      Configures this object using plugins or scripts. The given closure is used to configure an `ObjectConfigurationAction` which is then used to configure this object.

      Parameters:
        `closure` - The closure to configure the `ObjectConfigurationAction`.

    - #### apply

          void apply(Map<String,?> options)

      Configures this Object using plugins or scripts. The following options are available:

      - `from`: A script to apply to the object. Accepts any path supported by `Project.uri(Object)`.
      - `plugin`: The id or implementation class of the plugin to apply to the object.
      - `to`: The target delegate object or objects. Use this to configure objects other than this object.

      For more detail, see `ObjectConfigurationAction`.

      Parameters:
        `options` - The options to use to configure the `ObjectConfigurationAction`.