Maven deploy Plugin
Jump to navigation
Jump to search
External
Internal
Overview
The deploy plugin copies artifacts into a remote repository (the install plugin copies artifacts into the local repository).
Examples
Install Arbitrary Files as Binaries and Sources
mvn deploy:deploy-file -DgroupId=javax.transaction -DartifactId=jta -Dversion=1.0.1B \ -Dpackaging=jar -Dfile="C:\tmp\jta-1.0.1B.jar" \ -Durl="file://C:\Documents and Settings\user1\.m2" -DrepositoryId=repository
mvn deploy:deploy-file -DgroupId=ec.template -DartifactId=test -Dversion=1 -Dpackaging=zip \ -Dfile=./test.zip -Durl=https://username:mypasswd@example.com/nexus/content/repositories/libs-release-local/blah
This will create (with appropriate permissions) https://example.com/nexus/content/repositories/libs-release-local/blah/ec/template/test/1/test-1.zip
Deploying Programmatically an Artifact under a Different Name than its artifactId
The name of an artifact as created in ./target can be changed using <finalName>. For more details on changing the artifact name see Artifact Name.
However, the name won't propagate upon installation or deploy.
To install the artifact under a different name, do the following (please be aware that the artifact won't be deployed under the current module's directory, but under whatever is specified as "artifactId" below):
{{{
<plugin> <artifactId>maven-install-plugin</artifactId> <executions> <execution> <id>install-ear-as-archimedes</id> <phase>install</phase> <configuration> <file>${project.build.directory}/${project.build.finalName}.ear</file> <groupId>com.numberdog.archimedes</groupId> <artifactId>archimedes</artifactId> <version>${parent.version}</version> <packaging>ear</packaging> </configuration> <goals> <goal>install-file</goal> </goals> </execution> </executions> </plugin>
}}}