Package org.gradle.api.attributes

## Interface Usage

- All Superinterfaces:
    `Named`

      public interface Usage
      extends Named

  Represents the usage of a configuration. Typical usages include compilation or runtime. This interface allows the user to customize usages by implementing this interface.
  Since:
    3.4

- - ### Nested Class Summary

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

      `Named.Namer`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `C_PLUS_PLUS_API` | The C++ API of a library, packaged as header directories.
    `static String` | `JAVA_API` | The Java API of a library, packaged as class path elements, either a JAR or a classes directory.
    `static String` | `JAVA_API_CLASSES` | The Java API of a library, packaged as class path elements, either a JAR or a classes directory.
    `static String` | `JAVA_API_JARS` | The Java API of a library, packaged as a JAR only.
    `static String` | `JAVA_RUNTIME` | The Java runtime of a component, packaged as class path elements, either a JAR or a classes directory.
    `static String` | `JAVA_RUNTIME_CLASSES` | The Java runtime classes of a component, packaged as class path elements, either a JAR or a classes directory.
    `static String` | `JAVA_RUNTIME_JARS` | The Java runtime of a component, packaged as JAR only.
    `static String` | `JAVA_RUNTIME_RESOURCES` | The Java runtime resources of a component, packaged as class path elements, either a JAR or a classes directory.
    `static String` | `NATIVE_LINK` | The native link files of a library, packaged as static or shared library.
    `static String` | `NATIVE_RUNTIME` | The native runtime files of a library, packaged as a shared library.
    `static String` | `SWIFT_API` | The Swift API of a library, packaged as swiftmodule files.
    `static Attribute<Usage>` | `USAGE_ATTRIBUTE` |

  - ### Method Summary

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

      `getName`

- - ### Field Detail

    - #### USAGE_ATTRIBUTE

          static final Attribute<Usage> USAGE_ATTRIBUTE

    - #### JAVA_API

          @Incubating
          static final String JAVA_API

      The Java API of a library, packaged as class path elements, either a JAR or a classes directory.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### JAVA_API_CLASSES

          @Incubating
          static final String JAVA_API_CLASSES

      The Java API of a library, packaged as class path elements, either a JAR or a classes directory. Should not include resources, but may.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### JAVA_API_JARS

          @Incubating
          static final String JAVA_API_JARS

      The Java API of a library, packaged as a JAR only. Must not include classes directories.
      Since:
        5.3
      See Also:
        Constant Field Values

    - #### JAVA_RUNTIME

          @Incubating
          static final String JAVA_RUNTIME

      The Java runtime of a component, packaged as class path elements, either a JAR or a classes directory.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### JAVA_RUNTIME_JARS

          @Incubating
          static final String JAVA_RUNTIME_JARS

      The Java runtime of a component, packaged as JAR only. Must not include classes directories.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### JAVA_RUNTIME_CLASSES

          @Incubating
          static final String JAVA_RUNTIME_CLASSES

      The Java runtime classes of a component, packaged as class path elements, either a JAR or a classes directory. Should not include resources, but may.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### JAVA_RUNTIME_RESOURCES

          @Incubating
          static final String JAVA_RUNTIME_RESOURCES

      The Java runtime resources of a component, packaged as class path elements, either a JAR or a classes directory. Should not include classes, but may.
      Since:
        4.0
      See Also:
        Constant Field Values

    - #### C_PLUS_PLUS_API

          @Incubating
          static final String C_PLUS_PLUS_API

      The C++ API of a library, packaged as header directories.
      Since:
        4.1
      See Also:
        Constant Field Values

    - #### NATIVE_LINK

          @Incubating
          static final String NATIVE_LINK

      The native link files of a library, packaged as static or shared library.
      Since:
        4.1
      See Also:
        Constant Field Values

    - #### NATIVE_RUNTIME

          @Incubating
          static final String NATIVE_RUNTIME

      The native runtime files of a library, packaged as a shared library.
      Since:
        4.1
      See Also:
        Constant Field Values

    - #### SWIFT_API

          @Incubating
          static final String SWIFT_API

      The Swift API of a library, packaged as swiftmodule files.
      Since:
        4.1
      See Also:
        Constant Field Values