J'ai trois profils dans mon pom.xml pour notre application ...
Lorsque nous exécutons notre navigateur, les trois profils génèrent un fichier war portant le même nom. Je voudrais sortir $profilename-somearbitraryname.war
Des idées?
Vous vous êtes bien répondu:
<profiles>
<profile>
<id>dev</id>
<properties>
<rp.build.warname>dev</rp.build.warname>
</properties>
</profile>
<profile>
<id>qa</id>
<properties>
<rp.build.warname>qa</rp.build.warname>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<rp.build.warname>prod</rp.build.warname>
</properties>
</profile>
</profiles>
mais il existe un moyen plus simple de redéfinir le nom WAR:
<build>
<finalName>${rp.build.warname}-somearbitraryname</finalName>
<!-- ... -->
</build>
maven-war-plugin
n'est pas nécessaire.
La réponse était simple ...
Définissez une propriété dans chaque profil comme ceci ...
<profile>
<id>qa</id>
<properties>
<rp.build.warname>ourapp-qa</rp.build.warname>
</properties>
</profile>
Ajoutez ensuite ceci à vos plugins ...
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<packagingExcludes>WEB-INF/web.xml</packagingExcludes>
<warName>${rp.build.warname}</warName>
</configuration>
</plugin>