2010-09-02 24 views
19

Tengo un proyecto con 2 perfiles, porque UAT y PROD usan versiones diferentes del mismo contenedor.Force Maven clean

He notado que si no llamo explícitamente al mvn clean ..., el EAR desplegado tendrá AMBOS UAT y PROD.

¿Hay alguna manera en el POM para especificar que Maven siempre debe limpiar antes de cualquier edificio?

Respuesta

44

Uso del maven-clean-plugin con la fase initialize como se da aquí

http://maven.apache.org/plugins/maven-clean-plugin/usage.html

<project> 
    [...] 
    <build> 
    <plugins> 
     <plugin> 
     <artifactId>maven-clean-plugin</artifactId> 
     <version>2.4.1</version> 
     <executions> 
      <execution> 
      <id>auto-clean</id> 
      <phase>initialize</phase> 
      <goals> 
       <goal>clean</goal> 
      </goals> 
      </execution> 
     </executions> 
     </plugin> 
    </plugins> 
    </build> 
    [...] 
</project> 
+0

Excelente respuesta (+1) –

0

Lea en the maven lifecycle especialmente el ciclo de vida del paquete.

El plugin maven clean que utilice probablemente le permita definir un objetivo limpio en un paquete en particular. También se puede ejecutar por ejemplo MVN instalación limpia perfil -P

+2

Actualmente estoy especificando manualmente el objetivo limpio en la línea de comandos, ya que podemos implementar PROD desde maven, olvidando 'clean' podría causar un comportamiento indeterminado. – n002213f

4

Claro. Visite el Maven clean plugin usage page, proporcionan un ejemplo de cómo ejecutar el complemento automáticamente durante la compilación.

Cuestiones relacionadas