Class DeployFileMojo

  • All Implemented Interfaces:
    org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

    @Mojo(name="deploy-file",
          requiresProject=false,
          threadSafe=true)
    public class DeployFileMojo
    extends AbstractDeployMojo
    Installs the artifact in the remote repository.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.apache.maven.shared.transfer.artifact.deploy.ArtifactDeployer artifactDeployer  
      private java.lang.String artifactId
      ArtifactId of the artifact to be deployed.
      private java.lang.String classifier
      Add classifier to the artifact
      private java.lang.String classifiers
      A comma separated list of classifiers for each of the extra side artifacts to deploy.
      private java.lang.String description
      Description passed to a generated POM file (in case of generatePom=true)
      private java.io.File file
      File to be deployed.
      private java.lang.String files
      A comma separated list of files for each of the extra side artifacts to deploy.
      private boolean generatePom
      Upload a POM for this artifact.
      private java.lang.String groupId
      GroupId of the artifact to be deployed.
      private java.io.File javadoc
      The bundled API docs for the artifact.
      private java.lang.String packaging
      Type of the artifact to be deployed.
      private java.io.File pomFile
      Location of an existing POM file to be deployed alongside the main artifact, given by the ${file} parameter.
      private org.apache.maven.project.ProjectBuilder projectBuilder
      Used for creating the project to which the artifacts to deploy will be attached.
      private org.apache.maven.project.MavenProjectHelper projectHelper
      Used for attaching the artifacts to deploy to the project.
      private org.apache.maven.shared.transfer.repository.RepositoryManager repoManager  
      private java.lang.String repositoryId
      Server Id to map on the <id> under <server> section of settings.xml In most cases, this parameter will be required for authentication.
      private java.io.File sources
      The bundled sources for the artifact.
      private java.lang.String types
      A comma separated list of types for each of the extra side artifacts to deploy.
      private java.lang.Boolean uniqueVersion
      Deprecated.
      As of Maven 3, this isn't supported anymore and this parameter is only present to break the build if you use it!
      private java.lang.String url
      URL where the artifact will be deployed.
      private java.lang.String version
      Version of the artifact to be deployed.
      • Fields inherited from interface org.apache.maven.plugin.Mojo

        ROLE
    • Constructor Summary

      Constructors 
      Constructor Description
      DeployFileMojo()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private org.apache.maven.project.MavenProject createMavenProject()
      Creates a Maven project in-memory from the user-supplied groupId, artifactId and version.
      void execute()  
      private org.apache.maven.model.Model generateModel()
      Generates a minimal model from the user-supplied artifact information.
      private java.io.File generatePomFile()
      Generates a minimal POM from the user-supplied artifact information.
      (package private) java.lang.String getArtifactId()  
      (package private) java.lang.String getClassifier()  
      (package private) java.io.File getFile()  
      (package private) java.lang.String getGroupId()  
      private java.io.File getLocalRepoFile()
      Gets the path of the artifact constructed from the supplied groupId, artifactId, version, classifier and packaging within the local repository.
      (package private) java.lang.String getPackaging()  
      (package private) java.lang.String getVersion()  
      (package private) void initProperties()  
      private void processModel​(org.apache.maven.model.Model model)
      Process the supplied pomFile to get groupId, artifactId, version, and packaging
      (package private) org.apache.maven.model.Model readModel​(java.io.File pomFile)
      Extract the model from the specified POM file.
      (package private) void setArtifactId​(java.lang.String artifactId)  
      (package private) void setClassifier​(java.lang.String classifier)  
      (package private) void setGroupId​(java.lang.String groupId)  
      (package private) void setPackaging​(java.lang.String packaging)  
      (package private) void setPomFile​(java.io.File pomFile)  
      (package private) void setVersion​(java.lang.String version)  
      • Methods inherited from class org.apache.maven.plugin.AbstractMojo

        getLog, getPluginContext, setLog, setPluginContext
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • artifactDeployer

        @Component
        private org.apache.maven.shared.transfer.artifact.deploy.ArtifactDeployer artifactDeployer
      • projectHelper

        @Component
        private org.apache.maven.project.MavenProjectHelper projectHelper
        Used for attaching the artifacts to deploy to the project.
      • projectBuilder

        @Component
        private org.apache.maven.project.ProjectBuilder projectBuilder
        Used for creating the project to which the artifacts to deploy will be attached.
      • groupId

        @Parameter(property="groupId")
        private java.lang.String groupId
        GroupId of the artifact to be deployed. Retrieved from POM file if specified.
      • artifactId

        @Parameter(property="artifactId")
        private java.lang.String artifactId
        ArtifactId of the artifact to be deployed. Retrieved from POM file if specified.
      • version

        @Parameter(property="version")
        private java.lang.String version
        Version of the artifact to be deployed. Retrieved from POM file if specified.
      • packaging

        @Parameter(property="packaging")
        private java.lang.String packaging
        Type of the artifact to be deployed. Retrieved from the <packaging> element of the POM file if a POM file specified. Defaults to the file extension if it is not specified via command line or POM.
        Maven uses two terms to refer to this datum: the <packaging> element for the entire POM, and the <type> element in a dependency specification.
      • description

        @Parameter(property="generatePom.description")
        private java.lang.String description
        Description passed to a generated POM file (in case of generatePom=true)
      • file

        @Parameter(property="file",
                   required=true)
        private java.io.File file
        File to be deployed.
      • javadoc

        @Parameter(property="javadoc")
        private java.io.File javadoc
        The bundled API docs for the artifact.
        Since:
        2.6
      • sources

        @Parameter(property="sources")
        private java.io.File sources
        The bundled sources for the artifact.
        Since:
        2.6
      • repositoryId

        @Parameter(property="repositoryId",
                   defaultValue="remote-repository",
                   required=true)
        private java.lang.String repositoryId
        Server Id to map on the <id> under <server> section of settings.xml In most cases, this parameter will be required for authentication.
      • url

        @Parameter(property="url",
                   required=true)
        private java.lang.String url
        URL where the artifact will be deployed.
        ie ( file:///C:/m2-repo or scp://host.com/path/to/repo )
      • pomFile

        @Parameter(property="pomFile")
        private java.io.File pomFile
        Location of an existing POM file to be deployed alongside the main artifact, given by the ${file} parameter.
      • generatePom

        @Parameter(property="generatePom",
                   defaultValue="true")
        private boolean generatePom
        Upload a POM for this artifact. Will generate a default POM if none is supplied with the pomFile argument.
      • classifier

        @Parameter(property="classifier")
        private java.lang.String classifier
        Add classifier to the artifact
      • uniqueVersion

        @Parameter(property="uniqueVersion")
        @Deprecated
        private java.lang.Boolean uniqueVersion
        Deprecated.
        As of Maven 3, this isn't supported anymore and this parameter is only present to break the build if you use it!
        Whether to deploy snapshots with a unique version or not.
      • types

        @Parameter(property="types")
        private java.lang.String types
        A comma separated list of types for each of the extra side artifacts to deploy. If there is a mis-match in the number of entries in files or classifiers, then an error will be raised.
      • classifiers

        @Parameter(property="classifiers")
        private java.lang.String classifiers
        A comma separated list of classifiers for each of the extra side artifacts to deploy. If there is a mis-match in the number of entries in files or types, then an error will be raised.
      • files

        @Parameter(property="files")
        private java.lang.String files
        A comma separated list of files for each of the extra side artifacts to deploy. If there is a mis-match in the number of entries in types or classifiers, then an error will be raised.
      • repoManager

        @Component
        private org.apache.maven.shared.transfer.repository.RepositoryManager repoManager
    • Constructor Detail

      • DeployFileMojo

        public DeployFileMojo()
    • Method Detail

      • initProperties

        void initProperties()
                     throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
      • execute

        public void execute()
                     throws org.apache.maven.plugin.MojoExecutionException,
                            org.apache.maven.plugin.MojoFailureException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
        org.apache.maven.plugin.MojoFailureException
      • createMavenProject

        private org.apache.maven.project.MavenProject createMavenProject()
                                                                  throws org.apache.maven.plugin.MojoExecutionException,
                                                                         org.apache.maven.plugin.MojoFailureException
        Creates a Maven project in-memory from the user-supplied groupId, artifactId and version. When a classifier is supplied, the packaging must be POM because the project with only have attachments. This project serves as basis to attach the artifacts to deploy to.
        Returns:
        The created Maven project, never null.
        Throws:
        org.apache.maven.plugin.MojoExecutionException - When the model of the project could not be built.
        org.apache.maven.plugin.MojoFailureException - When building the project failed.
      • getLocalRepoFile

        private java.io.File getLocalRepoFile()
        Gets the path of the artifact constructed from the supplied groupId, artifactId, version, classifier and packaging within the local repository. Note that the returned path need not exist (yet).
        Returns:
        The absolute path to the artifact when installed, never null.
      • processModel

        private void processModel​(org.apache.maven.model.Model model)
        Process the supplied pomFile to get groupId, artifactId, version, and packaging
        Parameters:
        model - The POM to extract missing artifact coordinates from, must not be null.
      • readModel

        org.apache.maven.model.Model readModel​(java.io.File pomFile)
                                        throws org.apache.maven.plugin.MojoExecutionException
        Extract the model from the specified POM file.
        Parameters:
        pomFile - The path of the POM file to parse, must not be null.
        Returns:
        The model from the POM file, never null.
        Throws:
        org.apache.maven.plugin.MojoExecutionException - If the file doesn't exist of cannot be read.
      • generatePomFile

        private java.io.File generatePomFile()
                                      throws org.apache.maven.plugin.MojoExecutionException
        Generates a minimal POM from the user-supplied artifact information.
        Returns:
        The path to the generated POM file, never null.
        Throws:
        org.apache.maven.plugin.MojoExecutionException - If the generation failed.
      • generateModel

        private org.apache.maven.model.Model generateModel()
        Generates a minimal model from the user-supplied artifact information.
        Returns:
        The generated model, never null.
      • setGroupId

        void setGroupId​(java.lang.String groupId)
      • setArtifactId

        void setArtifactId​(java.lang.String artifactId)
      • setVersion

        void setVersion​(java.lang.String version)
      • setPackaging

        void setPackaging​(java.lang.String packaging)
      • setPomFile

        void setPomFile​(java.io.File pomFile)
      • getGroupId

        java.lang.String getGroupId()
      • getArtifactId

        java.lang.String getArtifactId()
      • getVersion

        java.lang.String getVersion()
      • getPackaging

        java.lang.String getPackaging()
      • getFile

        java.io.File getFile()
      • getClassifier

        java.lang.String getClassifier()
      • setClassifier

        void setClassifier​(java.lang.String classifier)