Package org.gradle.api.component

## Interface ConfigurationVariantDetails

-     @Incubating
      public interface ConfigurationVariantDetails

  The details object used to determine what to do with a configuration variant when publishing.
  Since:
    5.3

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `ConfigurationVariant` | `getConfigurationVariant()` | The configuration variant
    `void` | `mapToMavenScope​(String scope)` | Provides information about how to publish to a Maven POM file.
    `void` | `mapToOptional()` | Provides information about the optional status of this added configuration variant.
    `void` | `skip()` | Marks this configuration variant as being skipped when publishing.

- - ### Method Detail

    - #### getConfigurationVariant

          ConfigurationVariant getConfigurationVariant()

      The configuration variant

    - #### skip

          void skip()

      Marks this configuration variant as being skipped when publishing.

    - #### mapToOptional

          void mapToOptional()

      Provides information about the optional status of this added configuration variant.
      - For the Maven world, this means that dependencies will be declared as `optional`.
      - For the Ivy world, this means that configuration marked optional will not be extended by the `default` configuration.

    - #### mapToMavenScope

          void mapToMavenScope​(String scope)

      Provides information about how to publish to a Maven POM file. If nothing is said, Gradle will publish all dependencies from this configuration to the compile scope. It is preferable to give a mapping in order for consumers to get the right dependencies when asking for the API or the runtime of a component published as a POM file only. Note that Gradle will write Maven scopes in the following order:
      - compile dependencies
      - runtime dependencies
      - optional compile dependencies
      - optional runtime dependencies
      The mapping only applies to dependencies: dependency constraints will systematically be published as import scope.
      Parameters:
        `scope` - the Maven scope to use for dependencies found in this configuration variant