Transformación de formulación “Ant” de tarea definida en problema de ejecución.
Debido al mismo problema que esta pregunta, tengo que transformar esto:
<target name="generateStubs" depends="init">
<echo message="Generation des stubs depuis project-model"></echo>
<taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask">
<classpath>
<fileset dir="../src/lib/" includes="*.jar"></fileset>
</classpath>
</taskdef>
<xjc destdir="${generated.sources.path}">
<schema dir="../project-model/src/main/resources/xsd/" includes="*.xsd"></schema>
<produces dir="${generated.sources.path}" includes="**/*"></produces>
</xjc>
usando esta formulación:
<exec executable="xjc">
<arg value="-d"></arg>
<arg value="../src/lib/"></arg>
<arg value="-p"></arg>
<arg value="bla.bla.bla"></arg>
<arg value="${xjc.in.dir}/bla.xsd"></arg>
</exec>
He intentado algunas cosas, pero no puedo resolverlo, ¿alguna idea?
davy.ai
Para transformar el bloque de código original en el nuevo formato usando
<exec>
:Necesitamos reemplazar el
target
ytaskdef
originales con una sola tareaexec
que incluya todos los argumentos necesarios. El código resultante se vería algo así:Aquí estamos pasando los mismos argumentos
-d
y-p
que antes, pero usando${generated.sources.path}
ybla.bla.bla
como valores. También estamos usando--schema-directory
para especificar el directorio que contiene los archivos XSD, y proporcionando la ruta al directorio con../project-model/src/main/resources/xsd/
.Ten en cuenta que esto es solo un ejemplo y es posible que debas ajustar los argumentos de la línea de comandos para que se adapten a tus necesidades específicas.