Je dois copier tous les fichiers dml.sql dans le fichier DB2_List.txt si le fichier DML.sql est présent. Mais après l'exécution de ce fichier, je reçois une erreur comme ceci: copie ne supporte pas l'élément "if" imbriqué.La copie ne prend pas en charge l'élément "if" imbriqué dans la boucle imbriquée Ant-contrib
Veuillez nous faire savoir si vous avez une meilleure idée sur la boucle imbriquée dans Ant.
<available file="DB/DML.sql" property="db.check.present"/>
<copy file="DB/DDL.sql" tofile="DB2/DB2_List.txt" >
<if>
<equals arg1="${db.check.present}" arg2="true"/>
<then>
<filterchain>
<concatfilter append="DB/DML.sql" />
<tokenfilter delimoutput="${line.separator}" />
</filterchain>
</then>
</if>
</copy>
Salut David, S'il y a quatre fichiers db et je dois vérifier la disponibilité de tous les quatre fichiers et en fonction de la disponibilité j'ai besoin de copier le contenu des fichiers disponibles dans un seul fichier texte. Par exemple: Si quatre fichiers db comme dbddl, dbdml, normalddl et normaldml, alors je dois vérifier les scénarios suivants. Dans le premier cas, si tous les quatre fichiers sont disponibles (présents), copiez le contenu des quatre fichiers et collez-les dans un fichier texte. Dans le second cas, s'il n'y a que trois fichiers, copiez le contenu des trois fichiers et collez-le dans un fichier texte. etc. –
Regardez la tâche [' '] (http://ant.apache.org/manual/Tasks/macrodef.html). Vous pouvez créer une macro-tâche '' qui vérifiera et, si nécessaire, copiera le fichier db dans votre fichier texte. –