# Interface VariantComponentSpec

All Superinterfaces:
  `ComponentSpec, ModelElement, Named, VariantComponent`

All Known Subinterfaces:
  `ApplicationSpec, CUnitTestSuiteSpec, GeneralComponentSpec, GoogleTestTestSuiteSpec, LibrarySpec, NativeExecutableSpec, NativeLibrarySpec, NativeTestSuiteSpec, PlatformAwareComponentSpec, TargetedNativeComponent, TestSuiteSpec`

All Known Implementing Classes:
  `BaseComponentSpec`

@Incubating @Deprecated public interface VariantComponentSpec extends ComponentSpec, VariantComponent
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.
Represents a component spec that is made up of one or more mutually exclusive variants.

Since:
  2.12

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface Named

  `Named.Namer`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ModelMap<BinarySpec>`
  `getBinaries()`
  Deprecated.
  The variants produced for this component spec.

  ### Methods inherited from interface ComponentSpec

  `getProjectPath`

  ### Methods inherited from interface ModelElement

  `getDisplayName`

  ### Methods inherited from interface VariantComponent

  `getName, getVariants`

- ## Method Details

  - ### getBinaries

    ModelMap<BinarySpec> getBinaries()
    Deprecated.
    The variants produced for this component spec.
    Since:
      2.12