## org.apache.ivy.core.module.descriptor
Interface Artifact

All Superinterfaces:
  ExtendableItem

All Known Implementing Classes:
  AbstractArtifact, DefaultArtifact, IvyPublish.PublishArtifact, MDArtifact

    public interface Artifact

extends ExtendableItem

Representation of a published 'file' in the development environment. An artifact is generally a file that is produced by a project build. This is typically a `jar`, a `war`, an `ear`, a `zip`, a `deb`, etc.

Method Summary
`java.lang.String[]` `getConfigurations()` Returns the list of configurations where this artifact is associated to.
`java.lang.String` `getExt()` Retrieve the extension of the artifact.
`ArtifactRevisionId` `getId()` Return the specific identifier of this artifact.
`ModuleRevisionId` `getModuleRevisionId()` Returns the resolved module revision id for this artifact
`java.lang.String` `getName()` Return the name of the artifact, generally 'part' of the basename of the file.
`java.util.Date` `getPublicationDate()` Returns the resolved publication date for this artifact
`java.lang.String` `getType()` Returns the type of the artifact, typically 'jar', 'source', 'javadoc', 'debian', ...
`java.net.URL` `getUrl()` Returns the url at which this artifact can be found independently of ivy configuration.
`boolean` `isMetadata()` Returns true if this artifact represents a module metadata artifact, false if it's a published artifact

Methods inherited from interface org.apache.ivy.util.extendable.ExtendableItem
`getAttribute, getAttributes, getExtraAttribute, getExtraAttributes, getQualifiedExtraAttributes`

Method Detail

### getModuleRevisionId

    ModuleRevisionId getModuleRevisionId()

  Returns the resolved module revision id for this artifact

  Returns:
    the resolved module revision id.

### getPublicationDate

    java.util.Date getPublicationDate()

  Returns the resolved publication date for this artifact

  Returns:
    the resolved publication date. Never null.

### getName

    java.lang.String getName()

  Return the name of the artifact, generally 'part' of the basename of the file.

  Returns:
    the name of the artifact. Never null.

### getType

    java.lang.String getType()

  Returns the type of the artifact, typically 'jar', 'source', 'javadoc', 'debian', ...

  Returns:
    the type of the artifact. Never null.

### getExt

    java.lang.String getExt()

  Retrieve the extension of the artifact. The extension is without dot (ie. 'jar' and not '.jar')

  Returns:
    the extension of the artifact. Never null.

### getUrl

    java.net.URL getUrl()

  Returns the url at which this artifact can be found independently of ivy configuration. This can be null (and is usually for standard artifacts)

  Returns:
    url at which this artifact can be found independently of ivy configuration

### getConfigurations

    java.lang.String[] getConfigurations()

  Returns the list of configurations where this artifact is associated to.

  Returns:
    the list of configuration this artifact is associated to. Never null.

### getId

    ArtifactRevisionId getId()

  Return the specific identifier of this artifact.

  Returns:
    the id of the artifact

### isMetadata

    boolean isMetadata()

  Returns true if this artifact represents a module metadata artifact, false if it's a published artifact

  Returns:
    true if this artifact represents a module metadata artifact, false if it's a published artifact