comment Construire un projet avec maven sans version
Dans l'un de mes projets, j'ai besoin de construire un projet sans version. j'ai un appel de projet commonjerseylib quand je le construis en utilisant maven je reçois commonjerseylib-1.0.guerre mais j'ai besoin du nom de fichier WAR commonjerseylib.la guerre
Je supprime la balise de version de pom mais toujours par défaut Maven crée avec la version 1.0.
Merci d'avance
<modelVersion>4.0.0</modelVersion>
<groupId>commonjerseylib</groupId>
<artifactId>commonjerseylib</artifactId>
<packaging>ear</packaging>
<name>commonjerseylib</name>
<!--<version>1.0</version>-->
2 réponses
Vous aurez toujours besoin d'un numéro de version pour un projet, mais il est possible de changer le nom du paquet généré (JAR, WAR,EAR, etc.) à travers l'élément <finalName>
dans le POM.
<project>
...
<build>
...
<finalName>${project.artifactId}</finalName>
...
</build>
...
</project>
, Ou dans les anciennes versions de maven:
...
<finalName>${artifactId}</finalName>
...
Par défaut, le nom final est ${project.artifactId}-${project.version}
, mais cela peut être changé en autre chose. Cela n'affectera que le nom du package créé dans le répertoire target
; le nom du fichier dans le référentiel local et téléchargé dans des référentiels distants un numéro de version.
Voir la documentation de référence POM pour plus d'informations.
Dans le plugin Maven war dans la construction, changez
<warName> ${artifactId} </warName>
<build>
..........
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
<configuration>
<!-- web.xml is not mandatory since JavaEE 5 -->
<failOnMissingWebXml>false</failOnMissingWebXml>
<warName>${artifactId}</warName>
</configuration>
</plugin>
.............
<build>