Maven deploy Plugin: Difference between revisions
No edit summary |
|||
Line 27: | Line 27: | ||
This will create (with appropriate permissions) https://example.com/nexus/content/repositories/libs-release-local/blah/ec/template/test/1/test-1.zip | 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 [[Maven_Concepts#Artifact_Name|Artifact Name]]. | |||
The name of the artifact that is being built can be changed with {{<finalName>}} as follows: | |||
{{{ | |||
<build> | |||
<finalName>simple-webapp</finalName> | |||
</build> | |||
}}} | |||
or | |||
{{{ | |||
<build> | |||
<finalName>${artifactId}</finalName> | |||
</build> | |||
}}} | |||
or | |||
{{{ | |||
<build> | |||
<finalName>archimedes-${project.version}</finalName> | |||
</build> | |||
}}} | |||
or | |||
{{{ | |||
<build> | |||
<finalName>${parent.artifactId}-${artifactId}</finalName> | |||
</build> | |||
}}} | |||
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> | |||
<!-- | |||
Installing the final artifact as "archimedes-*.ear" for convenience; it | |||
will be available under 'archimedes' module, not 'ear'. | |||
--> | |||
<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> | |||
}}} |
Revision as of 16:23, 18 November 2016
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.
The name of the artifact that is being built can be changed with {{<finalName>}} as follows: {{{
<build> <finalName>simple-webapp</finalName> </build>
}}} or {{{
<build> <finalName>${artifactId}</finalName> </build>
}}} or {{{
<build> <finalName>archimedes-${project.version}</finalName> </build>
}}} or {{{
<build> <finalName>${parent.artifactId}-${artifactId}</finalName> </build>
}}}
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>
}}}