# Hierarchy For Package org.gradle.api.plugins

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - org.gradle.api.plugins.BasePlugin (implements org.gradle.api.Plugin<T>)
  - org.gradle.api.plugins.GroovyBasePlugin (implements org.gradle.api.Plugin<T>)
  - groovy.lang.GroovyObjectSupport (implements groovy.lang.GroovyObject)
    - org.gradle.api.plugins.ApplicationPlugin (implements org.gradle.api.Plugin<T>)
    - org.gradle.api.plugins.ApplicationPluginConvention
    - org.gradle.api.plugins.BasePluginConvention
    - org.gradle.api.plugins.JavaLibraryDistributionPlugin (implements org.gradle.api.Plugin<T>)
    - org.gradle.api.plugins.JavaPluginConvention
    - org.gradle.api.plugins.ProjectReportsPluginConvention
    - org.gradle.api.plugins.WarPluginConvention
  - org.gradle.api.plugins.GroovyPlugin (implements org.gradle.api.Plugin<T>)
  - org.gradle.api.plugins.HelpTasksPlugin (implements org.gradle.api.Plugin<T>)
  - org.gradle.api.plugins.JavaBasePlugin (implements org.gradle.api.Plugin<T>)
  - org.gradle.api.plugins.JavaPlugin (implements org.gradle.api.Plugin<T>)
  - org.gradle.api.plugins.MavenPlugin (implements org.gradle.api.Plugin<T>)
  - org.gradle.api.plugins.MavenPluginConvention (implements org.gradle.api.publication.maven.internal.MavenPomMetaInfoProvider)
  - org.gradle.api.plugins.ProjectReportsPlugin (implements org.gradle.api.Plugin<T>)
  - org.gradle.api.plugins.ReportingBasePlugin (implements org.gradle.api.Plugin<T>)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - org.gradle.api.GradleException
          - org.gradle.api.plugins.InvalidPluginException
          - org.gradle.api.InvalidUserDataException
            - org.gradle.api.plugins.ExtraPropertiesExtension.UnknownPropertyException
            - org.gradle.api.plugins.UnknownPluginException
          - org.gradle.api.plugins.PluginInstantiationException
  - org.gradle.api.plugins.WarPlugin (implements org.gradle.api.Plugin<T>)

## Interface Hierarchy

- org.gradle.api.plugins.AppliedPlugin
- org.gradle.api.plugins.ExtensionAware
- org.gradle.api.plugins.ExtensionContainer
  - org.gradle.api.plugins.Convention
- org.gradle.api.plugins.ExtraPropertiesExtension
- java.lang.Iterable<T>
  - java.util.Collection<E>
    - org.gradle.api.DomainObjectCollection<T>
      - org.gradle.api.DomainObjectSet<T> (also extends java.util.Set<E>)
        - org.gradle.api.plugins.PluginCollection<T>
          - org.gradle.api.plugins.PluginContainer
    - java.util.Set<E>
      - org.gradle.api.DomainObjectSet<T> (also extends org.gradle.api.DomainObjectCollection<T>)
        - org.gradle.api.plugins.PluginCollection<T>
          - org.gradle.api.plugins.PluginContainer
- org.gradle.api.plugins.MavenRepositoryHandlerConvention
- org.gradle.api.plugins.ObjectConfigurationAction
- org.gradle.api.plugins.PluginAware
- org.gradle.api.plugins.PluginManager

## Annotation Type Hierarchy

- org.gradle.api.plugins.DeferredConfigurable (implements java.lang.annotation.Annotation)