Même idée que PaoloC en utilisant Plugin Maven Wagon avec l'extension wagon-ssh, mais la configuration dans le fichier pom et l'exécuter sur la phase spécifiée, cet exemple copie le fichier war sur un serveur distant avec SSH :
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>wagon-maven-plugin</artifactId>
<version>1.0</version>
<executions>
<execution>
<id>upload-to-myserver</id>
<phase>deploy</phase>
<goals>
<goal>upload-single</goal>
</goals>
<configuration>
<fromFile>${project.build.directory}/${project.build.finalName}.war</fromFile>
<url>scp://username@myserver/path</url>
</configuration>
</execution>
</executions>
</plugin>
<!-- other plugins ... -->
</plugins>
<extensions>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>2.8</version>
</extension>
</extensions>
</build>
Le site <phase>
est facultative. Vous pouvez lancer uniquement l'exécution du téléchargement avec la commande :
mvn wagon:upload-single@upload-to-myserver