2012-11-15 3 views
0

J'ai un script Ant relativement simple commentOutXmlAnnotations.xml qui modifie le contenu des fichiers Java dans tous les sous-répertoires pour commenter certaines lignes via des expressions régulières :Le script Ant pour modifier les fichiers .java fonctionne dans le projet Eclipse "General", mais pas dans le projet Maven Eclipse

<?xml version="1.0"?> 
<project 
    name="CommentOutXmlAnnotations" 
    basedir="." 
    default="commentOutXmlAnnotations" > 

    <!-- This Ant script comments out the following lines from the Java files in this directory 
     and all subdirectories: 
     -import javax.xml.bind.annotation.*; 
     [email protected]* 

     To run this in Eclipse, right-click on this file and click "Run As->Ant Build".    
    --> 

    <target 
     name="commentOutXmlAnnotations"   
     description="Run" > 
      <replaceregexp 
       byline="false" 
       flags="g" > 

       <regexp pattern="(@Xml[A-Za-z0-9]+(\([^)]+\))?|import javax\.xml\.bind\.annotation\.[A-Za-z0-9.]+;)[ \t]*(\r?\n)" /> 

       <substitution expression="/*\1*/\3" /> 

       <fileset dir="." > 
        <include name="*/*.java" /> 
       </fileset> 
      </replaceregexp>   
    </target> 
</project> 

Si je laisse tomber commentOutXmlAnnotations.xml dans un nouveau projet général Eclipse avec .java fichiers dans des sous-répertoires et le clic droit et faire « Exécuter As-> Ant Build », tout fonctionne très bien et les lignes dans les fichiers .java sont commentés.

Cependant, si je laisse tomber ce fichier commentOutXmlAnnotations.xml dans un projet Maven Eclipse et essayer de faire la même chose, il semble exécuter et je vais obtenir la sortie de la console:

Buildfile: D:\Eclipse_Juno_SR1_OTP\opentripplanner-pojos-unversioned\commentOutXmlAnnotations.xml 
commentOutXmlAnnotations: 
BUILD SUCCESSFUL 
Total time: 302 milliseconds 

Mais le contenu du Les fichiers .java dans les sous-répertoires ne changent pas. Je pense que cela a quelque chose à voir avec les paramètres du répertoire du projet Maven.

Comment configurer le script projet/ant pour l'exécuter dans le même répertoire que celui dans lequel il est placé, dans un projet Eclipse Maven?

Répondre

0

Donc, erreur stupide. Le script ci-dessus ne recherche qu'un seul répertoire, il semble donc que le script n'a eu aucun effet, puisque tous les fichiers java avaient des noms de paquets plus longs qu'un répertoire.

Pour rechercher tous les sous-répertoires multiples niveaux de profondeur, l'élément fileset doit être:

<fileset dir="." > 
    <include name="**/*.java" /> 
</fileset> 
Questions connexes