2013-10-14 4 views
1

J'utilise Jenkins ver. 1.521 et le plugin maven standard (ver 1.519) pour construire des projets maven2.Jenkins maven plugin alt manifeste

En manifeste, je peux voir les entrées je ne configure dans l'un des fichiers pom:

Manifest-Version: 1.0 
Archiver-Version: Plexus Archiver 
Created-By: Apache Maven 
Built-By: jenkins 
Build-Jdk: 1.6.0_45 
Hudson-Build-Number: ... 
Hudson-Project: ... 
Hudson-Version: ... 
Jenkins-Build-Number: .. 
Jenkins-Project: ... 
Jenkins-Version: ... 

Où puis-je configurer ces entrées?

Répondre

1

En fait, je les ai trouvés codés en dur dans source of maven plugin pour jenkins, ce qui est triste.

+1

Si cette question a été résolue, vous devez la marquer, juste pour aider ceux qui cherchent de l'aide. –

2

Je ne connais aucun comportement par défaut de ce type. Généralement, ceci est configuré dans la section build de votre pom. Es-tu sûr que ça ne vient pas d'un ancêtre pom quelque part?

<plugin> 
    <artifactId>maven-jar-plugin</artifactId> 
    <configuration> 
     <archive> 
     <manifest> 
      <addDefaultImplementationEntries>true</addDefaultImplementationEntries> 
     </manifest> 
     <manifestEntries> 
      <Build-Job>${JOB_NAME}</Build-Job> 
      <Build-Id>${BUILD_ID}</Build-Id> 
      <Build-Number>${BUILD_NUMBER}</Build-Number> 
      <Build-Repository-Rev>${SVN_REVISION}</Build-Repository-Rev> 
      <Build-Time>${maven.build.timestamp}</Build-Time> 
     </manifestEntries> 
     </archive> 
    </configuration> 
    </plugin> 

Dans cet exemple, les éléments XML enfants de manifestEntries sont créés sur la base des noms d'éléments. Ils peuvent provenir de propriétés Maven, par ex. maven.build.timestamp, ou des variables d'environnement, par ex. JOB_NAME. Les variables d'environnement JOB_NAME, BUILD_ID, etc. sont set by Jenkins when it executes the job.

+0

je vous remercie pour cela. Je les ai trouvés codés en dur dans jenkins, mais je vais essayer d'utiliser votre solution pour remplacer cela. – glaz666

+0

@ glaz666 Bonne prise - Maintenant, je suis confus pourquoi nous ne voyons pas ces entrées dans nos MANIFESTES? Peut-être que la configuration explicite désactive ces entrées par défaut? Si cela ne vous dérange pas, publiez ce que vous trouvez lorsque vous configurez vos entrées. – sceaj

+0

J'ai remarqué cela quand j'ai changé un projet d'utiliser Maven 2.x à 3.x que les entrées Hudson- et Jenkins- ont disparu. –