2011-10-17 10 views

Respuesta

6

La mejor manera de ver qué está pasando realmente en su proyecto a lo largo de esas líneas es con mvn help:effective-pom. No solo muestra los valores predeterminados; muestra lo que realmente es de acuerdo con tu pom actual.

3

Tengo un problema con la respuesta anterior.

Aquí hay un simple pom. Utiliza un complemento de procesador de anotación, que está vinculado a generate-sources por defecto, ya que no especificó un <phase>.

<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.test</groupId> 
    <artifactId>test-simple</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.bsc.maven</groupId> 
       <artifactId>maven-processor-plugin</artifactId> 
       <version>2.0.5</version> 
       <executions> 
        <execution> 
         <goals> 
          <goal>process</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

mvn generate-resources en efecto, invocan el plugin ...

$ mvn install 
[INFO] Scanning for projects... 
[INFO]                   
[INFO] ------------------------------------------------------------------------ 
[INFO] Building test-simple 0.0.1-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- maven-processor-plugin:2.0.5:process (default) @ test-simple --- 

escanear Sin embargo, la salida de mvn help:effective-pom no da ninguna pista sobre la unión de este plugin por defecto.

$ mvn help:effective-pom |grep generate-sources; echo $? 
1 

La única forma que he encontrado hasta ahora de enumerar el enlace de fase predeterminado es mediante el examen de la fuente del complemento.

Cuestiones relacionadas