Package org.gradle.api.attributes

## Interface Category

- All Superinterfaces:
    `Named`

      public interface Category
      extends Named

  This attribute describes the categories of variants for a given module.

  Three values are found in published components:

  - `library`: Indicates that the variant is a library, that usually means a binary and a set of dependencies
  - `platform`: Indicates that the variant is a platform, that usually means a definition of dependency constraints
  - `documentation`: Indicates that the variant is documentation of the software module
  - `verification`: Indicates that the variant is output from a testing or code quality verification tool
  One value is used for derivation. A `platform` variant can be consumed as a `enforced-platform` which means all the dependency information it provides is applied as `forced`.
  Since:
    5.3

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Named

      `Named.Namer`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static Attribute<Category>` | `CATEGORY_ATTRIBUTE` |
    `static java.lang.String` | `DOCUMENTATION` | The documentation category
    `static java.lang.String` | `ENFORCED_PLATFORM` | The enforced platform, usually a synthetic variant derived from the `platform`
    `static java.lang.String` | `LIBRARY` | The library category
    `static java.lang.String` | `REGULAR_PLATFORM` | The platform category
    `static java.lang.String` | `VERIFICATION` | The verification category, for variants which contain the results of running verification tasks (e.g.

  - ### Method Summary

    - ### Methods inherited from interface org.gradle.api.Named

      `getName`

- - ### Field Detail

    - #### CATEGORY_ATTRIBUTE

          static final Attribute<Category> CATEGORY_ATTRIBUTE

    - #### LIBRARY

          static final java.lang.String LIBRARY

      The library category
      See Also:
        Constant Field Values

    - #### REGULAR_PLATFORM

          static final java.lang.String REGULAR_PLATFORM

      The platform category
      See Also:
        Constant Field Values

    - #### ENFORCED_PLATFORM

          static final java.lang.String ENFORCED_PLATFORM

      The enforced platform, usually a synthetic variant derived from the `platform`
      See Also:
        Constant Field Values

    - #### DOCUMENTATION

          static final java.lang.String DOCUMENTATION

      The documentation category
      Since:
        5.6
      See Also:
        Constant Field Values

    - #### VERIFICATION

          @Incubating
          static final java.lang.String VERIFICATION

      The verification category, for variants which contain the results of running verification tasks (e.g. Test, Jacoco).

      Note that this category can not be published, and an error will result if any attempt is made to publish a configuration containing 'org.gradle.category=verification'.

      Since:
        7.4
      See Also:
        Constant Field Values