Pregunta

Así que este es el escenario. Tengo

<target name="test">
  <property file="blah"></property>
  <exec dir="" executable="trast.exe" resolveexecutable="true" spawn="true">
  </exec>
</target>     

<!-- So now I have the second target that uses Return value from first target -->
<target name="test2">
  <property file="blah"></property>
  <exec dir="" executable=RETURN VALUE resolveexecutable="true" spawn="true">
  </exec>
</target>     

Básicamente necesito una manera de utilizar el resultado del primer objetivo en el próximo objetivo. Miré en línea y una solución parece ser es analizar la producción. Pero hay una manera de conseguirlo sin necesidad de analizar?

Gracias

¿Fue útil?

Solución

La tarea ejecutivo tiene una outputproperty. ¿Podría hacer algo como esto:

<target name="test">
  <exec dir="" executable="trast.exe" resolveexecutable="true" spawn="true" outputproperty="blah">
  </exec>
</target>     

<!-- So now I have the second target that uses Return value from first target -->
<target name="test2">
  <exec dir="" executable="${blah}" resolveexecutable="true" spawn="true">
  </exec>
</target>

Ha sido un tiempo desde que se utiliza Ant y no tenerlo instalado en esta máquina, pero me parece recordar hacer algo como lo anterior.

O tal vez usar resultproperty?

encontrado aquí: http://ant.apache.org/manual/Tasks/exec.html

Otros consejos

El primer ejecutable devuelve el nombre del ejecutable que más tarde tiene que ejecutar en test2, ¿verdad?

Así que el primer ejecutable podría escribir ese nombre en un archivo de script (archivo por lotes, por ejemplo, en Windows, el archivo de shell en Unix). El guión tendría un nombre fijo y su script Ant acaba de ejecutarlo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top