Question

C'est donc le scénario. J'ai

<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>     

Fondamentalement, je besoin d'un moyen d'utiliser le résultat de la première cible dans la prochaine cible. J'ai regardé en ligne et une solution semble être est d'analyser la sortie. Mais est-il un moyen de le faire sans l'analyse syntaxique?

Merci

Était-ce utile?

La solution

La tâche exec a une outputproperty. Pouvez-vous faire quelque chose comme ceci:

<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>

Il a été un moment que j'utilisé Ant et je ne l'ai pas installé sur cette machine, mais je semble me rappeler de faire quelque chose comme ci-dessus.

Ou peut-être utiliser resultproperty?

Je l'ai trouvé ici: http://ant.apache.org/manual/Tasks/exec.html

Autres conseils

Le premier exécutable renvoie le nom de l'exécutable que vous avez plus tard à courir dans test2, droit?

Ainsi, le premier exécutable pouvait écrire ce nom dans un fichier de script (par exemple fichier batch sous Windows, le fichier shell sous Unix). Le script aurait un nom fixe et votre script Ant serait tout simplement l'exécuter.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top