# Package org.gradle.api.artifacts

## Package org.gradle.api.artifacts Description

Classes for declaring and using artifacts and artifact dependencies.

- Interface Summary
  Interface | Description
  --- | ---
  ArtifactIdentifier | The identifier for a module artifact.
  ArtifactRepositoryContainer |
  ClientModule | To model a module in your dependency declarations.
  ComponentMetadata | Provides a read-only view of a resolved component's metadata, which typically originates from a component descriptor (Ivy file, Maven POM).
  ComponentMetadataDetails | Describes a resolved component's metadata, which typically originates from a component descriptor (Ivy file, Maven POM).
  ComponentModuleMetadata | Contains immutable component module metadata information.
  ComponentModuleMetadataDetails | Contains and allows configuring component module metadata information.
  ComponentSelection | Represents a tuple of the component selector of a module and a candidate version to be evaluated in a component selection rule.
  ComponentSelectionRules | Represents a container for component selection rules.
  ConfigurablePublishArtifact | A PublishArtifact whose properties can be modified.
  Configuration | A `Configuration` represents a group of artifacts and their dependencies.
  ConfigurationContainer |
  ConflictResolution | The conflict resolution
  Dependency | A `Dependency` represents a dependency on the artifacts from a particular source.
  DependencyArtifact |
  DependencyResolutionListener | A `DependencyResolutionListener` is notified as dependencies are resolved.
  DependencyResolveDetails | Provides details about a dependency when it is resolved.
  DependencySet | A set of artifact dependencies.
  DependencySubstitution | Provides means to substitute a different dependency during resolution.
  DependencySubstitutions | Allows replacing dependencies with other dependencies.
  DependencySubstitutions.Substitution | Provides a DSL-friendly mechanism for specifying the target of a substitution.
  ExcludeRule | An `ExcludeRule` is used to describe transitive dependencies that should be excluded when resolving dependencies.
  ExcludeRuleContainer |
  ExternalDependency |
  ExternalModuleDependency |
  FileCollectionDependency | A `FileCollectionDependency` is a Dependency on a collection of local files which are not stored in a repository.
  LenientConfiguration | Resolved configuration that does not fail eagerly when some dependencies are not resolved, or some artifacts do not exist.
  Module |
  ModuleDependency | A `ModuleDependency` is a Dependency on a module outside the current project.
  ModuleIdentifier | The identifier of a module.
  ModuleVersionIdentifier | The identifier of a module version.
  ModuleVersionSelector | Selects a module version
  ProjectDependency |
  PublishArtifact |
  PublishArtifactSet | A set of artifacts to be published.
  ResolutionStrategy | Defines the strategies around dependency resolution.
  ResolvableDependencies | A set of Dependency objects which can be resolved to a set of `File` instances.
  ResolvedArtifact | Information about a resolved artifact.
  ResolvedConfiguration | A `ResolvedConfiguration` represents the result of resolving a Configuration, and provides access to both the artifacts and the meta-data of the result.
  ResolvedDependency | Information about a resolved dependency.
  ResolvedModuleVersion | Represents meta-data about a resolved module version.
  SelfResolvingDependency | A `SelfResolvingDependency` is a Dependency which is able to resolve itself, independent of a repository.
  UnresolvedDependency | Unsuccessfully resolved dependency.

- Class Summary
  Class | Description
  --- | ---
  Configuration.Namer | A Namer namer for configurations that returns getName().

- Enum Summary
  Enum | Description
  --- | ---
  Configuration.State | The states a configuration can be into.

- Exception Summary
  Exception | Description
  --- | ---
  PublishException |
  ResolveException |
  UnknownConfigurationException |
  UnknownRepositoryException | An `UnknownRepositoryException` is thrown when a repository referenced by name cannot be found.