Agregar el numero de revisión en el jar/war — Technology Life
Con la configuración adecuada, se puede agregar el numero de revisión en el archivo META-INF/MANIFEST.MF que se encuentra dentro del jar o de war, ejemplo:
Manifest-Version: 1.0
SCM-Revision: 276480
Archiver-Version: Plexus Archiver
Built-By: miuler
Created-By: Apache Maven 3.3.3
Build-Jdk: 1.8.0_65
El campo SCM-Revision nos indica que este artefacto ha sido crado a partir de la revisión 276480 de suversion.
Campos que se agregan al pom.xml
Se tienen que agregar a la configuración de maven 3 secciones:
- La primera es un básicamente es para que el plugin de svn no de error, esta es una sección dummy, que no hace nada, pero es necesario para el svn.
- La segunda sección es la del plugin buildnumber-maven-plugin que es el te brinda el numero, el cual puede puede funcionar tanto con subversion como con Mercurial.
- Si usan jenkins, agregar como parametro de construccion el jenkins.build.number
- Y la tercera sección es otro plugin propio del artefacto, ya se para jars, wars, o rars, en este ejemplo estoy usando maven-jar-plugin, y la sección principal es donde se pone la variable que representa el numero de revisión (# de commit), para subversion se usa ${buildNumber}, y para mercurial se usa ${changeSet}
Configuración para Subversion
org.codehaus.mojo
buildnumber-maven-plugin
validate
create
false
false
unknown
7
yyyy-MM-dd
build.date
org.apache.maven.plugins
maven-jar-plugin
3.0.2
${buildNumber}
${project.name}
${project.organization.name}
${project.groupId}
${project.url}
${jenkins.build.number}
${buildNumber}
${project.version}
scm:svn:http://127.0.0.1/dummy
scm:svn:https://127.0.0.1/dummy
HEAD
127.0.0.1/dummy
Configuracion para Mercurial (hg)
scm:svn:http://127.0.0.1/dummy</connection>
scm:svn:https://127.0.0.1/dummy</developerConnection>
HEAD
http://127.0.0.1/dummy</url>
org.codehaus.mojo
buildnumber-maven-plugin
validate
create
hgchangeset
false
false
org.apache.maven.plugins
maven-jar-plugin
${changeSet}
Originally published at miuler.com.