2009-06-18 11 views
0

J'utilise le plugin maven cobertura pour générer des rapports de couverture, mais pour une raison quelconque, le but de l'instrument est bloqué dans une boucle infinie.maven cobertura generated-classes

Dans mon répertoire de classes (nommé bin), une boucle infinie se produit et crée des répertoires named generated-classes/cobertura/generated-classes/cobertura ... et ainsi de suite tant que je laisse l'objectif de l'instrument s'exécuter. À l'intérieur de chacun des répertoires Cobertura sont mes classes instrumentées. Une idée de pourquoi cela pourrait se produire?

Répondre

1

Pouvez-vous publier votre fichier pom? Ou au moins les sections pertinentes? Vous devriez avoir quelque chose comme ce qui suit:

<build> 
    <pluginManagement> 
     <plugins> 
...snip...    
      <!-- cobertura code coverage plugin --> 
      <plugin> 
       <groupId>org.codehaus.mojo</groupId> 
       <artifactId>cobertura-maven-plugin</artifactId> 
       <version>2.2</version> 
       <configuration> 
        <formats> 
         <format>xml</format> 
        </formats> 
       </configuration> 
      </plugin> 
      <!-- end cobertura code coverage plugin --> 

     </plugins> 
    </pluginManagement> 
</build> 

<reporting> 
<plugins> 
    <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>cobertura-maven-plugin</artifactId> 
     <version>2.2</version> 
     <configuration> 
      <formats> 
       <format>xml</format> 
      </formats> 
     </configuration> 
    </plugin> 
</plugins> 
</reporting> 

De même, suivez-vous la disposition du répertoire maven standard pour votre source? Où est votre fichier pom par rapport à vos fichiers source, et à quoi ressemble votre mise en page de répertoire?

+0

Bonjour. Ma section POM ressemble à la vôtre. maven exécute la tâche de cobertura mais elle raccroche sur cobertura: instrument. ma structure de répertoire n'est pas la mise en page maven standard, en particulier mon répertoire de sortie (c'est bin au lieu de classes). Dois-je spécifier quelque part dans Cobertura? –

+0

Je pense que le problème est que mon répertoire de sortie par défaut est juste bin, et non cible/bin (ou un second niveau). le plugin est bloqué dans une boucle récursive car il place son répertoire classes-générées au même niveau que mes classes instrumentées réelles. Je dois le mettre à jour et voir s'il résout le problème. –

+0

Bien que ce ne soit pas obligatoire, je vous recommande vivement de configurer votre projet en fonction de la spécification maven: http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html - Je réalise ce n'est peut-être pas possible pour tous les projets, mais c'est quelque chose à considérer. Je me suis accroché à ça aussi la première fois que j'ai essayé d'utiliser maven, parce que je pensais que mon organisation d'annuaire était un peu plus intuitive, mais une fois que vous sautez dans l'idée de "convention-over-configuration" . Je vais creuser et voir ce que je peux trouver d'autre. – matt