# Package org.gradle.api.artifacts

@NonNullApi package org.gradle.api.artifacts
Classes for declaring and using artifacts and artifact dependencies.

Related Packages
Package
Description
org.gradle.api
Start Here: Gradle's `Project` API, which is available from your build files.
org.gradle.api.artifacts.cache
Classes for controlling dependency resolution.
org.gradle.api.artifacts.component
Classes that provide meta-data about software components.
org.gradle.api.artifacts.dsl
Classes used in the artifact DSL.
org.gradle.api.artifacts.ivy
Classes for declaring and using Ivy modules.
org.gradle.api.artifacts.maven
Maven specific classes for dependency management.
org.gradle.api.artifacts.query
Classes used for querying the artifacts.
org.gradle.api.artifacts.repositories
Classes for declaring and using artifact repositories.
org.gradle.api.artifacts.result
Classes that compose the resolution result
org.gradle.api.artifacts.transform
Classes that perform artifact transformations.
org.gradle.api.artifacts.type
Types related to artifact type definitions.
Class
Description
ArtifactCollection
A collection of artifacts resolved for a configuration.
ArtifactIdentifier
The identifier for a module artifact.
ArtifactRepositoryContainer
A `ResolverContainer` is responsible for managing a set of `ArtifactRepository` instances.
ArtifactView
A view over the artifacts resolved for this set of dependencies.
ArtifactView.ViewConfiguration
Configuration for a defined artifact view.
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).
ComponentMetadataBuilder
A component metadata builder.
ComponentMetadataDetails
Describes a resolved component's metadata, which typically originates from a component descriptor (Ivy file, Maven POM).
ComponentMetadataSupplier
A component metadata rule is responsible for providing the initial metadata of a component from a remote repository, in place of parsing the descriptor.
ComponentMetadataSupplierDetails
A component metadata rule details, giving access to the identifier of the component being resolved, the metadata builder, and the repository resource accessor for this.
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.
Configuration.Namer
A `Namer` namer for configurations that returns `Configuration.getName()`.
Configuration.State
The states a configuration can be into.
ConfigurationContainer
A `ConfigurationContainer` is responsible for declaring and managing configurations.
ConfigurationPublications
Represents the outgoing artifacts associated with a configuration.
ConfigurationVariant
Represents some variant of an outgoing configuration.
DependenciesMetadata
Describes the dependencies of a variant declared in a resolved component's metadata, which typically originate from a component descriptor (Gradle metadata file, Ivy file, Maven POM).
Dependency
A `Dependency` represents a dependency on the artifacts from a particular source.
DependencyArtifact
An `Artifact` represents an artifact included in a `Dependency`.
DependencyConstraint
Represents a constraints over all, including transitive, dependencies.
DependencyMetadata
Describes a dependency declared in a resolved component's metadata, which typically originates from a component descriptor (Gradle metadata file, Ivy file, Maven POM).
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
A container for adding exclude rules for dependencies.
ExternalDependency
An `ExternalDependency` is a `Dependency` on a source outside the current project hierarchy.
ExternalModuleDependency
A `ModuleDependency` is a `Dependency` on a module outside the current project hierarchy.
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.
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.
MutableVersionConstraint
A configurable version constraint.
ProjectDependency
A `ProjectDependency` is a `Dependency` on another project in the current project hierarchy.
PublishArtifact
A `PublishArtifact` is an artifact produced by a project.
PublishArtifactSet
A set of artifacts to be published.
PublishException
A `PublishException` is thrown when a dependency configuration cannot be published for some reason.
ResolutionStrategy
Defines the strategies around dependency resolution.
ResolutionStrategy.SortOrder
Defines the sort order for components and artifacts produced by the configuration.
ResolvableDependencies
A set of `Dependency` objects which can be resolved to a set of files.
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.
ResolveException
A `ResolveException` is thrown when dependency resolution fails for some reason.
SelfResolvingDependency
A `SelfResolvingDependency` is a `Dependency` which is able to resolve itself, independent of a repository.
UnknownConfigurationException
An `UnknownConfigurationException` is thrown when a configuration referenced by name cannot be found.
UnknownRepositoryException
An `UnknownRepositoryException` is thrown when a repository referenced by name cannot be found.
UnresolvedDependency
Unsuccessfully resolved dependency.
VariantMetadata
Represents the metadata of one variant of a component, see `ComponentMetadataDetails.withVariant(String, Action)`.
VersionConstraint
Represents a constrained version.