Considérons un fragment de build.xml minimal qui construit un pot à partir de sources et inclut toutes les ressources non Java: Imaginez maintenant que je dois prendre en charge une liste de répertoires de source: P> <property name="src.dirs" value="src;src-gen" />
4 Réponses :
Normalement, vous les énumérez tous ensemble:
<path id="source.path"> <pathelement path="${src.dir}"/> <pathelement path="${src2.dir}"/> <pathelement path="${src4.dir}"/> </path> <javac destdir="bin"> srcpathref="source.path"/>
Comme je l'ai mentionné Javac code> est facile car il acceptera une liste directement. Mon problème est avec la tâche
copie code>.
Dans la deuxième voie, pour utiliser le chemin dans Javac, utilisez
Je ne suis pas sûr d'un moyen de le faire avec des tâches de fourmis intégrées, mais vous pouvez utiliser un ant-contrib
C'est ce que j'ai fini par faire, bien que cela ne permet pas la création d'une ressource «composite» pouvant être réutilisée par référence.
Il convient également d'être considéré comme un exemple de création de trajectoire à partir de la liste des répertoires avec
La solution simple consiste à spécifier de plusieurs fichiers de fichiers, de la même manière que la tâche Javac prend en charge plusieurs attributs "SRC": ceci est bien sûr supposant que le nombre d'emplacements de code source est corrigé, ce qui n'est pas déraisonnable à attendre. p> Si vous souhaitez conduire ceci à l'aide d'une propriété de liste, vous devez recourir à l'intégration d'un script dans votre construction pour traiter cette liste (je ne peux pas endourrer les ant-forts ): p> notes: p>
Une solution simple sans tâches anti-contributions ni scripts intégrés: multirootfileSet em> à la rescousse! ;-) nécessite une fourchette 1.9.4 ou supérieure. P> p>