2010-06-02 2 views
5

Je veux trouver un natif maven (c'est-à-dire sans appeler de programmes externes) pour injecter la révision svn dans le manifeste de guerre.Ajouter une révision de subversion au manifeste de guerre en utilisant maven2

Est-ce que quelqu'un sait comment faire?

J'ai trouvé une mention à comment ajouter la révision de subversion aux manifestes dans les fichiers jar mais pas avec les fichiers war.

J'ai recherché SO mais je n'ai pas trouvé ce problème spécifiquement.

Répondre

4

Je veux trouver un natif de Maven (à savoir sans faire appel à des programmes externes) pour injecter la révision svn dans la guerre manifeste.

Ceci est possible avec le Build Number Maven Plugin en utilisant le fournisseur svnjava:

Si vous devez exécuter le plug-in sur la machine sans svn dans le chemin vous pouvez configurer le mojo d'utiliser le svnjava fournisseur.

<build> 
    <plugins> 
     <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>buildnumber-maven-plugin</artifactId> 
     <version>1.0-beta-3</version> 
     <executions> 
      <execution> 
      <phase>validate</phase> 
      <goals> 
       <goal>create</goal> 
      </goals> 
      </execution> 
     </executions> 
     <configuration> 
      <doCheck>true</doCheck> 
      <doUpdate>true</doUpdate> 
      <providerImplementations> 
      <svn>javasvn</svn> 
      </providerImplementations>   
     </configuration> 
     </plugin> 
    </plugins> 
    </build> 

La dans la propriété ${buildNumber} Numéro de build Maven Plugin définit le numéro de build que vous pouvez utiliser dans votre POM.

J'ai trouvé une mention sur la façon d'ajouter la révision de subversion aux manifestes dans les fichiers jar mais pas avec les fichiers war.

Ensuite, pour ajouter le numéro de build dans le MANIFESTE d'une guerre, configurer le plugin comme mentionné dans la page Usage:

<build> 
    ... 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-war-plugin</artifactId> 
     <version>2.0.2</version> 
     <configuration> 
      <archive> 
      <manifest> 
       <addDefaultImplementationEntries>true</addDefaultImplementationEntries> 
      </manifest> 
      <manifestEntries> 
       <Implementation-Build>${buildNumber}</Implementation-Build> 
      </manifestEntries> 
      </archive> 
     </configuration> 
     </plugin> 
    </plugins> 
    </build> 
2

Essayez this. À mi-chemin vers le bas, cherche maven-guerre-plugin

<build> 
    ... 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-war-plugin</artifactId> 
     <version>2.0.2</version> 
     <configuration> 
      <archive> 
      <manifest> 
       <addDefaultImplementationEntries>true</addDefaultImplementationEntries> 
      </manifest> 
      <manifestEntries> 
       <Implementation-Build>${buildNumber}</Implementation-Build> 
      </manifestEntries> 
      </archive> 
     </configuration> 
     </plugin> 
    </plugins> 
    </build> 
Questions connexes