2011-02-24 14 views

Respuesta

10

Puede tomar el ejemplo del sitio web del proyecto y agregar una fase a la ejecución. Acabo de probar con este pom a continuación y funciona bien.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.stackoverflow</groupId> 
    <artifactId>q5110133</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>exec-maven-plugin</artifactId> 
     <version>1.2</version> 
     <executions> 
      <execution> 
      <id>Test.bat</id> 
      <phase>test</phase> 
      <goals> 
       <goal>exec</goal> 
      </goals> 
      </execution> 
     </executions> 
     <configuration> 
      <executable>c:\temp\test.bat</executable> 
      <!-- optional --> 
      <workingDirectory>C:\temp</workingDirectory> 
     </configuration> 
     </plugin> 
    </plugins> 
    </build> 
</project> 
+0

debes usar ' prueba' (al menos eso es lo que dicen los OP) –

+0

@Sean Patrick: Bueno, probablemente _install_ no era la mejor opción para un ejemplo. Era solo una fase que sabía que afectaría :-) He cambiado eso. – Jan

+0

Esto funciona, pero tengo una pregunta de "siguiente paso": ¿qué sucede si el "test.bat" del ejemplo anterior puede generar un archivo "JUnit XML report"? ¿Cómo se lo devuelvo a Maven? ¿Alguna idea/ejemplo? – Detro

5

El objetivo del orden es que debe elegir una fase para la ejecución, que está detrás de la fase de prueba. Puedes ver esto en el ciclo de vida de Maven Build.

Por ejemplo, puede usar prepare-package que es la fase inmediatamente posterior a la fase de prueba.

BTW: los complementos, cuando se configuran en el mismo ciclo de vida, se ejecutan en el orden en que se enumeran en el pom.xml.

Cuestiones relacionadas