risposta complessa a quella: sì
E 'un po' complicato e bisogna stare attenti, come il pom non sarà possibile ottenere riscritto. Quindi solo il repository remoto di Maven (artifactory o nexus) lo inserirà nella struttura di cartelle corretta.
Se si sovrascrive l'obiettivo deploy-file nella obiettivo Maven Deploy, è possibile sovrascrivere i parametri: http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html
Un esempio che sarebbe sempre inviare la versione 4.5.1 per Nexus sarebbe simile a questa:
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>deploy-file</goal>
</goals>
<phase>deploy</phase>
<configuration>
<repositoryId>nexus-site</repositoryId>
<url>http://nexus.some.where/nexus-2/content/repositories/releases</url>
<file>${build.directory}/${project.build.finalName}.${project.packaging}</file>
<generatePom>false</generatePom>
<pomFile>pom.xml</pomFile>
<version>4.5.1</version>
</configuration>
</execution>
</executions>
</plugin>
(e prima che qualcuno chieda, una ragione per fare qualcosa di simile è rendere le build più compatibili con CI. In CI tutto è solo un numero di build, non c'è davvero un "build a release", ogni checkin produce una produzione già artefatto, quindi sostituendo la versione 4.5.1 con ${BUILD_NUMBER}
ti lasceranno molte versioni in te r stoccaggio artefatto ...)
Possibile duplicato di [questo] (http : //stackoverflow.com/questions/4238944/controlling-maven-final-name-of-jar-artifact) domanda. – dmahapatro