Package org.apache.maven.plugins.deploy
Class DeployFileMojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.apache.maven.plugins.deploy.AbstractDeployMojo
-
- org.apache.maven.plugins.deploy.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 artifactprivate 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.
-
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.plugins.deploy.AbstractDeployMojo
createDeploymentArtifactRepository, failIfOffline, getRetryFailedDeploymentCount, getSession, warnIfAffectedPackagingAndMaven
-
-
-
-
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 infiles
orclassifiers
, then an error will be raised.
-
classifiers
@Parameter(property="classifiers") private java.lang.String classifiers
-
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 intypes
orclassifiers
, then an error will be raised.
-
repoManager
@Component private org.apache.maven.shared.transfer.repository.RepositoryManager repoManager
-
-
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 benull
.
-
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 benull
.- 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)
-
-