tag pom plugin finalname java maven-2

java - pom - ¿Cómo puedo mostrar un mensaje en Maven



pom xml build (4)

Puede utilizar el complemento Echo Maven de Björn Ekryd , que se publica en Maven Central :

<plugin> <groupId>com.github.ekryd.echo-maven-plugin</groupId> <artifactId>echo-maven-plugin</artifactId> <version>1.2.0</version> <executions> <execution> <phase>package</phase> <goals> <goal>echo</goal> </goals> <configuration> <message>war has changed</message> </configuration> </execution> </executions> </plugin>

[INFO] --- maven-war-plugin:2.4:war (default-war) @ mymodule --- [INFO] Packaging webapp [INFO] Processing war project [INFO] [INFO] --- echo-maven-plugin:1.2.0:echo (default) @ mymodule --- [INFO] war has changed [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------

Además, este complemento tiene una cobertura de código del 95% , lo cual es bastante bueno.

¿Cómo puedo mostrar un mensaje en Maven? En ant, tenemos "eco" para mostrar un mensaje, pero en maven, ¿cómo puedo hacer eso?


Puedes usar el complemento Groovy Maven para esto.

<plugin> <groupId>org.codehaus.gmaven</groupId> <artifactId>groovy-maven-plugin</artifactId> <version>2.0</version> <executions> <execution> <phase>validate</phase> <goals> <goal>execute</goal> </goals> <configuration> <source> log.info(''Test message: {}'', ''Hello, World!'') </source> </configuration> </execution> </executions> </plugin>

La configuración anterior producirá el siguiente resultado:

[INFO] Test message: Hello, World!


Puedes usar el plugin antrun:

<plugin> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <phase>generate-resources</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> <echo>Hello world!</echo> </tasks> </configuration> </execution> </executions> </plugin>

Sin embargo, un problema es que tienes que elegir a qué fase del ciclo de vida de compilación se vinculará (mi ejemplo tiene el complemento vinculado a generate-resources ). A diferencia de Ant, usted no controla el ciclo de vida en sí mismo, sino que simplemente vincula los complementos a ciertos puntos en un ciclo de vida predefinido. Dependiendo de lo que realmente intente hacer, esto puede o no tener sentido para su caso de uso.


<plugin> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <phase>generate-resources</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> <echo>[your message]:${Urkey}</echo> </tasks> </configuration> </execution> </executions> </plugin>