org.gradle.api.artifacts.maven

## Interface MavenDeployer

- All Superinterfaces:
    ArtifactRepository, MavenResolver, PomFilterContainer
  All Known Subinterfaces:
    GroovyMavenDeployer

      public interface MavenDeployer
      extends MavenResolver

  A resolver that can only be used for uploading artifacts to a Maven repository. If you use this resolver for getting dependencies from a Maven repository, an exception is thrown. This resolver support all aspects of Maven deployment, including snapshot deployment and metadata.xml manipulation.

  You have to specify at least one repository. Otherwise, if there is only one artifact, usually there is not more to do. If there is more than one artifact you have to decide what to do about this, as a Maven POM can only deal with one artifact. There are two strategies. If you want to deploy only one artifact you have to specify a filter to select this artifact. If you want to deploy more than one artifact, you have to specify filters which select each artifact. Associated with each filter is a separate configurable POM.

  You can create an instance of this type via the `Upload.getRepositories()` container

- - ### Field Summary

    - ### Fields inherited from interface org.gradle.api.artifacts.maven.PomFilterContainer

      `DEFAULT_ARTIFACT_POM_NAME`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addProtocolProviderJars(Collection<File> jars)` Out of the box only uploading to the filesysten and via http is supported.
    `Object` | `getRepository()` Returns the repository to be used for uploading artifacts.
    `Object` | `getSnapshotRepository()` Returns the repository to be used for uploading snapshot artifacts.
    `boolean` | `isUniqueVersion()` Returns whether to assign snapshots a unique version comprised of the timestamp and build number, or to use the same version each time.
    `void` | `setRepository(Object repository)` Sets the repository to be used for uploading artifacts.
    `void` | `setSnapshotRepository(Object snapshotRepository)` Sets the repository to be used for uploading snapshot artifacts.
    `void` | `setUniqueVersion(boolean uniqueVersion)` Sets whether to assign snapshots a unique version comprised of the timestamp and build number, or to use the same version each time.

    - ### Methods inherited from interface org.gradle.api.artifacts.maven.MavenResolver

      `beforeDeployment, beforeDeployment, getSettings`

    - ### Methods inherited from interface org.gradle.api.artifacts.repositories.ArtifactRepository

      `getName, setName`

    - ### Methods inherited from interface org.gradle.api.artifacts.maven.PomFilterContainer

      `addFilter, addFilter, filter, filter, getActivePomFilters, getFilter, getPom, pom, pom, pom, setFilter, setPom`

- - ### Method Detail

    - #### getRepository

          Object getRepository()

      Returns the repository to be used for uploading artifacts.
      See Also:
        `setRepository(Object)`

    - #### setRepository

          void setRepository(Object repository)

      Sets the repository to be used for uploading artifacts. If `getSnapshotRepository()` is not set, this repository is also used for uploading snapshot artifacts.
      Parameters:
        `repository` - The repository to be used

    - #### getSnapshotRepository

          Object getSnapshotRepository()

      Returns the repository to be used for uploading snapshot artifacts.
      See Also:
        `setSnapshotRepository(Object)`

    - #### setSnapshotRepository

          void setSnapshotRepository(Object snapshotRepository)

      Sets the repository to be used for uploading snapshot artifacts. If this is not set, the `getRepository()` is used for uploading snapshot artifacts.
      Parameters:
        `snapshotRepository` - The repository to be used

    - #### addProtocolProviderJars

          void addProtocolProviderJars(Collection<File> jars)

      Out of the box only uploading to the filesysten and via http is supported. If other protocolls should be used, the appropriate Maven wagon jars have to be passed via this method.

    - #### isUniqueVersion

          boolean isUniqueVersion()

      Returns whether to assign snapshots a unique version comprised of the timestamp and build number, or to use the same version each time. Defaults to true.

    - #### setUniqueVersion

          void setUniqueVersion(boolean uniqueVersion)

      Sets whether to assign snapshots a unique version comprised of the timestamp and build number, or to use the same version each time. Defaults to true.