Difference between revisions of "Deploying Single Files with Maven"

From Pterodactylus
Jump to: navigation, search
(Add hints about other options, such as the path to the local repository.)
(Add hint about adding dependencies to a pom.xml for the file being deployed)
Line 20: Line 20:
 
       </build>
 
       </build>
 
     </project>
 
     </project>
 +
 +
And most definitely ''should'' you add a <code>pom.xml</code> in order to declare dependencies of the file you are deploying.
  
 
To install a file only locally, use:
 
To install a file only locally, use:

Revision as of 10:46, 2 October 2024

In order to deploy single files that are not controlled by Maven, you need the deploy:deploy-file goal.

   # mvn -Dfile=file -DgroupId=groupId -DartifactId=artifactId -Dpackaging=jar -Dversion=version -DrepositoryId=repositoryId -Dsources=source.jar -Durl=scpexe://host/path deploy:deploy-file

The repository ID is necessary in case you have authentication information defined for your repository. You might additionally also need the following in your pom.xml:

   <project>
     <modelVersion>4.0.0</modelVersion>
     <groupId>groupId</groupId>
     <artifactId>artifactId</artifactId>
     <version>version</version>
     <build>
       <extensions>
         <extension>
           <groupId>org.apache.maven.wagon</groupId>
           <artifactId>wagon-ssh-external</artifactId>
           <version>1.0</version>
         </extension>
       </extensions>
     </build>
   </project>

And most definitely should you add a pom.xml in order to declare dependencies of the file you are deploying.

To install a file only locally, use:

   # mvn install:install-file -Dfile=file -DgroupId=groupId -DartifactId=artifactId -Dpackaging=jar -Dversion=version

To additionally install the sources for a JAR file, use:

   # mvn install:install-file -Dfile=file -DgroupId=groupId -DartifactId=artifactId -Dpackaging=jar -Dversion=version -Dclassifier=sources

Other userful options include localRepositoryPath.