plugin exclude example java maven-2 maven maven-plugin

java - exclude - maven-resources-plugin example



¿Cómo poner la versión del proyecto maven en el archivo de guerra manifiesto? (3)

Coloca ${project.version} en tu manifest.mf donde quieras que esté la versión. Para que esto funcione, creo que necesitas el complemento de recursos para que Manven "filtre" los recursos a medida que se incluyen en tu archivo war.

Necesito que Maven inserte el número de versión del archivo POM en el manifiesto ubicado en el archivo WAR en /WEB-INF/manifest.mf.

¿Cómo hago esto? Pude archivar fácilmente la documentación para hacer esto en un archivo JAR utilizando el complemento maven-jar, pero eso no funciona en un archivo WAR.

¡Gracias por la ayuda!


Lo descubrí usando el plugin maven-war-plugin. Vea la configuración a continuación:

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.1.1</version> <configuration> <archive> <manifestEntries> <version>${project.version}</version> </manifestEntries> </archive> </configuration> </plugin>


O puede usar los indicadores addDefaultImplementationEntries o addDefaultSpecificationEntries que agregarán varias entradas, incluida la propiedad project.version .

addDefaultImplementationEntries

Implementation-Title: ${project.name} Implementation-Version: ${project.version} Implementation-Vendor-Id: ${project.groupId} Implementation-Vendor: ${project.organization.name} Implementation-URL: ${project.url}

addDefaultSpecificationEntries

Specification-Title: ${project.name} Specification-Version: ${project.version} Specification-Vendor: ${project.organization.name}

El valor predeterminado para ambos es falso. Si una propiedad no está definida (por ejemplo, project.organization.name ), esa línea se excluirá del manifiesto.

Esto podría ir a la configuración de maven-war-plugin de la siguiente manera:

<plugin> <artifactId>maven-war-plugin</artifactId> <version>2.2</version> <configuration> <archive> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> </manifest> </archive> </configuration> </plugin>