# Interface ExternalModuleDependency

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

All Known Subinterfaces:
  `MinimalExternalModuleDependency`

public interface ExternalModuleDependency extends ExternalDependency

A `ExternalModuleDependency` is a `Dependency` on a module outside the current project hierarchy.

- ## Field Summary

  ### Fields inherited from interface Dependency

  `ARCHIVES_CONFIGURATION, CLASSIFIER, DEFAULT_CONFIGURATION`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ExternalModuleDependency`
  `copy()`
  Creates and returns a new dependency with the property values of this one.
  `boolean`
  `isChanging()`
  Indicates that the given dependency can have different content for the same identifier.
  `ExternalModuleDependency`
  `setChanging(boolean changing)`
  Sets the dependency as "changing" or "not changing".

  ### Methods inherited from interface Dependency

  `because, getGroup, getName, getReason, getVersion`

  ### Methods inherited from interface ExternalDependency

  `getVersionConstraint, isForce, version`

  ### Methods inherited from interface ModuleDependency

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

  ### Methods inherited from interface ModuleVersionSelector

  `getGroup, getModule, getName, getVersion, matchesStrictly`

- ## Method Details

  - ### isChanging

    boolean isChanging()
    Indicates that the given dependency can have different content for the same identifier.
    See Also:
      - `setChanging(boolean)`

  - ### setChanging

    ExternalModuleDependency setChanging(boolean changing)
    Sets the dependency as "changing" or "not changing". If set to true, the dependency is marked as "changing." Gradle will periodically check the remote repository for updates, even if the local cache entry has not yet expired. Defaults to false.
    Parameters:
      `changing` - if true, the dependency is considered changing and Gradle should check for a change in the remote repository, even if a local entry exists.
    Returns:
      this

  - ### copy

    ExternalModuleDependency copy()
    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 `ModuleDependency`
    Returns:
      The copy. Never returns null.