# ComponentSpec

API Documentation: | `ComponentSpec`

Known Subtypes: |
`NativeComponentSpec`
`PlatformAwareComponentSpec`
`LibrarySpec`

Note: This class is incubating and may change in a future version of Gradle.

A software component that is built by a Gradle project.

### Properties

Property | Description
`binaries` | Incubating The binaries that are built for this component. You can use this to configure the binaries for this component.
`displayName` | Incubating Returns a human-consumable display name for this component.
`source` | Deprecated Incubating The source sets that are used to build this component.

### Methods

Method | Description
`sources(action)` | Incubating Configures the source sets used to build this component.

### Script blocks

No script blocks

### Property details

#### ``ModelMap`<`BinarySpec`>` `binaries` (read-only)

Note: This property is incubating and may change in a future version of Gradle.

The binaries that are built for this component. You can use this to configure the binaries for this component.

#### `String` `displayName` (read-only)

Note: This property is incubating and may change in a future version of Gradle.

Returns a human-consumable display name for this component.

#### ``ModelMap`<`LanguageSourceSet`>` `source` (read-only)

Note: This property is deprecated and will be removed in the next major version of Gradle.

Note: This property is incubating and may change in a future version of Gradle.

The source sets that are used to build this component.

### Method details

#### `void` `sources`(``Action`<? super `ModelMap`<`LanguageSourceSet`>>` action)

Note: This method is incubating and may change in a future version of Gradle.

Configures the source sets used to build this component.