Package org.gradle.api.artifacts

## Interface ClientModule

- All Superinterfaces:
    `Dependency`, `ExternalDependency`, `ExternalModuleDependency`, `HasAttributes`, `HasConfigurableAttributes<ModuleDependency>`, `ModuleDependency`, `ModuleVersionSelector`

      @Deprecated
      public interface ClientModule
      extends ExternalModuleDependency

  Deprecated.
  To model a module in your dependency declarations. Usually you can either declare a single dependency artifact or you declare a module dependency that depends on a module descriptor in a repository. With a client module you can declare a module dependency without the need of a module descriptor in a remote repository.

  Client modules dependencies are deprecated and will be removed in Gradle 9.0. Please use component metadata rules instead.

  See Also:
    `DependencyHandler`

- - ### Field Summary

    - ### Fields inherited from interface org.gradle.api.artifacts.Dependency

      `ARCHIVES_CONFIGURATION, CLASSIFIER, DEFAULT_CONFIGURATION`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addDependency​(ModuleDependency dependency)` | Deprecated. Add a dependency to the client module.
    `ClientModule` | `copy()` | Deprecated. Creates and returns a new dependency with the property values of this one.
    `java.util.Set<ModuleDependency>` | `getDependencies()` | Deprecated. Returns all the dependencies added to the client module.
    `java.lang.String` | `getId()` | Deprecated. Returns the id of the client module.

    - ### Methods inherited from interface org.gradle.api.artifacts.Dependency

      `because, contentEquals, getGroup, getName, getReason, getVersion`

    - ### Methods inherited from interface org.gradle.api.artifacts.ExternalDependency

      `getVersionConstraint, isForce, version`

    - ### Methods inherited from interface org.gradle.api.artifacts.ExternalModuleDependency

      `isChanging, setChanging`

    - ### Methods inherited from interface org.gradle.api.artifacts.ModuleDependency

      `addArtifact, artifact, artifact, attributes, capabilities, doNotEndorseStrictVersions, endorseStrictVersions, exclude, getArtifacts, getAttributes, getCapabilitySelectors, getExcludeRules, getRequestedCapabilities, getTargetConfiguration, isEndorsingStrictVersions, isTransitive, setTargetConfiguration, setTransitive`

    - ### Methods inherited from interface org.gradle.api.artifacts.ModuleVersionSelector

      `getGroup, getModule, getName, getVersion, matchesStrictly`

- - ### Method Detail

    - #### addDependency

          void addDependency​(ModuleDependency dependency)

      Deprecated.
      Add a dependency to the client module. Such a dependency is transitive dependency for the project that has a dependency on the client module.
      Parameters:
        `dependency` - The dependency to add to the client module.
      See Also:
        `getDependencies()`

    - #### getId

          java.lang.String getId()

      Deprecated.
      Returns the id of the client module. This is usually only used for internal handling of the client module.
      Returns:
        The id of the client module

    - #### getDependencies

          java.util.Set<ModuleDependency> getDependencies()

      Deprecated.
      Returns all the dependencies added to the client module.
      See Also:
        `addDependency(ModuleDependency)`

    - #### copy

          ClientModule copy()

      Deprecated.
      Creates and returns a new dependency with the property values of this one.
      Specified by:
        `copy` in interface `Dependency`
      Specified by:
        `copy` in interface `ExternalDependency`
      Specified by:
        `copy` in interface `ExternalModuleDependency`
      Specified by:
        `copy` in interface `ModuleDependency`
      Returns:
        The copy. Never returns null.