Deploy di un artifact ad un repository Archiva

Come aggiungere un artifact ad un'installazione di Archiva.

Nel file $HOME/.m2/settings.xml aggiungere nella sezione "servers" i dati del repository sul quale caricare il file

<servers>
  <server>
    <id>repo.internal</id>
    <username>admin</username>
    <password>thepass</password>
  </server>
  <server>
    <id>repo.snapshots</id>
    <username>admin</username>
    <password>thepass</password>
  </server>
</servers>

Nella directory che contiene i file da caricare creare un pom.xml

<project>
   <modelVersion>4.0.0</modelVersion>
   <groupId>group</groupId>
   <artifactId>webdav-deploy</artifactId>
   <packaging>pom</packaging>
   <version>1</version>
   <name>Webdav Deployment POM</name>
   <build>
      <extensions>
         <extension>
            <groupId>org.apache.maven.wagon</groupId>
            <artifactId>wagon-webdav</artifactId>
            <version>1.0-beta-2</version>
         </extension>
      </extensions>
   </build>
</project>

Per caricare il file (in questo caso la versione 5.9 di TestNG):

mvn deploy:deploy-file -Dfile=testng-5.9-jdk15.jar \
    -DgroupId=org.testng -DartifactId=testng -Dversion=5.9 \
    -Dclassifier=jdk15 -Dpackaging=jar -DrepositoryId=repo.internal \
    -Durl=dav:http://myrepo/archiva/repository/internal