Maven install Plugin: Difference between revisions
No edit summary |
|||
Line 9: | Line 9: | ||
=Overview= | =Overview= | ||
The install plugin copies artifacts into the ''local repository'' (the deploy plugin copies artifacts into a remote repository). It uses the information in the POM (groupId, artifactId, version) to determine the proper location for the artifact within the local repository. It can also be used as a detached tool to copy arbitrary files into the repository. | The install plugin copies artifacts into the ''local repository'' (the [[Maven deploy Plugin|deploy plugin]] copies artifacts into a remote repository). It uses the information in the POM (groupId, artifactId, version) to determine the proper location for the artifact within the local repository. It can also be used as a detached tool to copy arbitrary files into the repository. | ||
=Examples= | =Examples= |
Revision as of 16:06, 18 November 2016
External
Internal
Overview
The install plugin copies artifacts into the local repository (the deploy plugin copies artifacts into a remote repository). It uses the information in the POM (groupId, artifactId, version) to determine the proper location for the artifact within the local repository. It can also be used as a detached tool to copy arbitrary files into the repository.
Examples
Install Arbitrary Files as Binaries and Sources
mvn install:install-file -DgroupId=my.group -DartifactId=my-file -Dversion=1.0 -Dpackaging=jar -Dfile=./my-file.jar mvn install:install-file -DgroupId=my.group -DartifactId=my-file -Dversion=1.0 -Dpackaging=jar -Dclassifier=sources -Dfile=./my-file-src.jar
!!!Command Line: Deployment
"deploy" sends an artifact into a remote repository
{{{ 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\ofeodoro\.m2" -DrepositoryId=repository }}}
!!!Deploying a third party artifact in http://repository.novaordis.org
In order to do that, you will need to log in on Template:Raiatea and become the user Template:Repository.
{{{
/usr/local/maven/bin/mvn deploy:deploy-file -DgroupId=javax.jms -DartifactId=jms -Dversion=1.1 \ -Dpackaging=jar -Dfile=./javax.jms.jar \ -Durl=file:///home/repository/maven2 \ -DrepositoryId=repository.novaordis.org
/usr/local/maven/bin/mvn deploy:deploy-file -DgroupId=javax.jms -DartifactId=jms -Dversion=1.1 \ -Dpackaging=jar -Dclassifier=source -Dfile=./somesourcejar.jar \ -Durl=file:///home/repository/maven2 \ -DrepositoryId=repository.novaordis.org
}}}
!!!Deploy a third party artifact under an arbitrary group into a remote https:// repository
{{{
mvn deploy:deploy-file -DgroupId=ec.template -DartifactId=test -Dversion=1 -Dpackaging=zip \ -Dfile=./test.zip -Durl=https://A290368:mypasswd@calt.cms.gov/nexus/content/repositories/libs-release-local/blah
}}}
This will create (with appropriate permissions) https://calt.cms.gov/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 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>
}}}
|[Maven Plugin Deploy]