una txt ruta relativa obtener modificar manejo guardar ejemplos datos crear como carpeta archivos archivo java ant jar

java - txt - Cómo hacer eco de la variable de ruta de clase a un archivo



ruta relativa java (2)

Directamente a través de:

<echo file="${dist.dir}/deps.txt">${ant.refid:main.class.path}</echo> <!-- or --> <echo file="${dist.dir}/deps.txt">${toString:main.class.path}</echo>

$ {ant.refid: main.class.path} o $ {toString: main.class.path} es una propiedad csv que contiene todos los elementos de su ruta con sus conjuntos de archivos anidados (en general, colecciones de datos) separados con ''; ''
Ver propiedades manuales de Ant y PropertyHelpers
Si desea otro separador, debe usar pathconvert que tiene un pathsep attribute , es decir, para una nueva línea después de cada archivo en su deps.txt use pathsep="${line.separator}"

Estoy intentando que todos los contenidos de mi ruta de clase principal sean escritos en un archivo por mi compilación Ant:

<path id="main.class.path"> <fileset dir="${lib.main.dir}"> <include name="**/*.*"/> </fileset> </path>

Cuando main.class.path el main.class.path sobre main.class.path , Ant / Eclipse lanza una información sobre herramientas que muestra los elementos en esa classpath:

C: / Users / miUsuario / workbench / eclipse / workspace / myProj / lib / main / ant-junit-1.6.5.jar

etc. (La lista real tiene alrededor de 30 JARs en ella).

Quiero que esta lista se escriba en un archivo llamado deps.txt en mi directorio dist/ .

Estoy atascado porque no puedo averiguar cómo hacer main.class.path una variable Ant, o cómo al menos acceder a ella en la tarea <echo> :

<echo file="${dist.dir}/deps.txt" message="${???}"/>

¿Estoy aquí fuera de la base, o incluso de forma remota cerca?

Y para aquellos de ustedes que, en lugar de responder a esta pregunta, solo comentarán ¿Por qué querrían hacer esto? Mi respuesta es simple: solo quiero un pequeño archivo de texto en mi JAR que sirva como recordatorio visual (para mi futuro) de lo que son sus dependencias.


Prueba esto:

<pathconvert property="expanded.main.class.path" refid="main.class.path"/> <target name="everything"> <echo message="${expanded.main.class.path}" file="${dist.dir}/deps.txt"/> </target>