# Class ComponentBasePlugin

java.lang.Object
org.gradle.platform.base.plugins.ComponentBasePlugin

All Implemented Interfaces:
  `Plugin<Project>`

@Incubating @Deprecated public abstract class ComponentBasePlugin extends Object implements Plugin<Project>
Deprecated.
The Gradle software model is deprecated and will be removed in Gradle 10. Use the new component model (e.g. `cpp-application`, `cpp-library`, `swift-application`, `swift-library`, `xctest`) instead.
Base plugin for `ComponentSpec` support. - Registers the infrastructure to support the base `ComponentSpec` type and extensions to this type.

Since:
  2.12

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `(package private) static class`
  `ComponentBasePlugin.PluginRules`
  Deprecated.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ComponentBasePlugin()`
  Deprecated.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `apply(Project project)`
  Deprecated.
  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

  - ### ComponentBasePlugin

    public ComponentBasePlugin()
    Deprecated.

- ## Method Details

  - ### apply

    public void apply(Project project)
    Deprecated.
    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