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

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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