2010-04-12 10 views
6

J'essaye d'exécuter avec Maven un test écrit en utilisant des tâches Ant. J'ai généré les fichiers requis pour importer la tâche dans Maven, mais je ne peux pas les exécuter.Exécuter une tâche Ant avec Maven

Mon POM est défini ainsi:

<build> 
    <plugins> 
     <plugin> 
     <artifactId>maven-ant-plugin</artifactId> 
     <version>2.1</version> 
     <executions> 
      <execution> 
      <phase>generate-sources</phase> 
      <configuration> 
       <tasks> 
       <echo message="Hello, maven"/> 
       </tasks> 
      </configuration> 
      <goals> 
       <goal>run</goal> 
      </goals> 
      </execution> 
     </executions> 
     </plugin> 
    </plugins> 
    </build> 

J'essaie d'exécuter ce message, mais je reçois une erreur run:

[ERROR] BUILD ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] 'run' was specified in an execution, but not found in the plugin 

Mais, si je lance: « mvn antrun: courir ", je sais que cela ne peut pas exécuter la tâche.

Si j'ai des cibles différentes, comment les appeler depuis Maven? J'ai le pom.xml et build.xml avec les tâches ant.

Merci.

Gonzalo

Répondre

12

Pour exécuter des tâches Ant à partir de Maven 2, vous devez utiliser le Maven AntRun Plugin:

<build> 
    <plugins> 
    <plugin> 
     <artifactId>maven-antrun-plugin</artifactId> 
     <version>1.3</version> 
     <executions> 
     <execution> 
      <phase>generate-sources</phase> 
      <configuration> 
      <tasks> 
       <echo message="Hello, maven"/> 
      </tasks> 
      </configuration> 
      <goals> 
      <goal>run</goal> 
      </goals> 
     </execution> 
     </executions> 
    </plugin> 
    </plugins> 
</build> 

Le Maven Ant Plugin est quelque chose d'autre, il est utilisé pour générer des fichiers de construction pour Ant à partir du POM .

+0

Oui, je n'ai pas compris cela, merci. – Gonzalo

2

Essayez celui-ci ... Ce sera sur la phase de validation.

 <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-antrun-plugin</artifactId> 
       <version>1.1</version> 
       <executions> 
        <execution> 
         <phase>validate</phase> 
         <goals> 
          <goal>run</goal> 
         </goals> 
         <configuration> 
          <tasks> 

           <echo message="Hello world" /> 
           <echo message="${env.M2_HOME}" ></echo> 

          </tasks> 
         </configuration> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
Questions connexes