Comment faire écho à la classe de la variable de chemin d'un fichier
Je vais essayer d'obtenir tout le contenu principal de mon classpath pour être écrits dans un fichier par mon Ant buildscript:
<path id="main.class.path">
<fileset dir="${lib.main.dir}">
<include name="**/*.*"/>
</fileset>
</path>
Quand je survolez main.class.path
, Ant/Eclipse lance une info-bulle qui montre les éléments de cette classe:
C:\Users\myUser\workbench\eclipse\workspace\myProj\lib\main\ant-junit-1.6.5.jar
etc. (La liste actuelle a environ 30 Pots sur elle.)
Je veux cette liste écrites dans un fichier appelé deps.txt sous mon dist/
répertoire.
Je suis coincé car je ne peux pas comprendre comment le faire main.class.path
une Fourmi variable, ou comment, à moins d'y accéder dans le <echo>
tâche:
<echo file="${dist.dir}/deps.txt" message="${???}"/>
Suis-je moyen-hors de la base ici, ou même de loin?!?
Et pour ceux d'entre vous qui, au lieu de répondre à cette question, tout commentaire Pourquoi voudriez-vous faire cela?, ma réponse est simple: je veux juste un petit fichier texte dans mon POT qui sert comme un rappel visuel (pour mon futur moi) pour ce que ses dépendances.
Vous devez vous connecter pour publier un commentaire.
Essayez ceci:
Simple via :
${ant.refid:principal.classe.path} ou ${toString:principal.classe.path} est un csv propriété qui détient tous les éléments de votre chemin avec ses imbriquée fileset(s) (resourcecollections en général), séparés par ';'
voir Ant Manuel Propriétés et PropertyHelpers
Si vous souhaitez un autre séparateur que vous devez utiliser pathconvert qui a un
pathsep attribute
, c'est à dire pour une nouvelle ligne après chaque fichier dans votre deps.txt utilisationpathsep="${line.separator}"