Comment vérifier une condition dans ant et en fonction de sa valeur d'imprimer un message?
C'est un petit morceau de code merci de donner un coup d'oeil puis suivre la description....
<condition property="${param1}">
<or>
<istrue value="win-x86"/>
<istrue value= "win-x86-client"/>
<istrue value= "win-x64"/>
</or>
</condition>
<target name="Mytarget" if="${param1}">
<echo message="executing windows family build:::${param1}"/>
</target>
<target name="print.name" >
<antcall target="win-x86-build">
<param name="param1" value="${platform.id}"/>
</antcall>
</target>
Je veux que quand jamais la plate-forme.id contient l'un de la windows nom de famille, il doit imprimer le message EXECUTING WINDOWS FAMILY BUILD
mais le problème est qu'il est l'impression de ce message, même lorsque la famille est unix.
Je pense que soit je ne suis pas la vérification de l'état correctement ou autre, je suis en train de faire une erreur.
Quelqu'un peut-il m'aider à sortir de cette s'il vous plaît?
Vous devez vous connecter pour publier un commentaire.
Peter essaie de vous expliquer que vous devez explicitement spécifier le nom de la propriété. Essayez les solutions suivantes pour faire de votre code de travail:
Une meilleure solution serait de faire usage de système d'exploitation de tests intégrés de la FOURMI condition tâche.
Dirait que vous vous êtes mal compris la État De La Tâche:
Essayez d'utiliser le Condition
os
:equals
condition.property
est le nom de la propriété à définir - pas à vérifier, et istrue vérifie si la propriété de ce nom a une valeur commetrue
,yes
ouon
. Vous voulez vérifier pour valeurs spécifiques, donc est égal à est ce que vous voulez. La Documentation a des exemples parfaits, donc je ne vais pas écrire ce code pour vous. N'hésitez pas à demander si vous avez des problèmes de mise en œuvre.Depuis ant 1.9.1 vous pouvez faire ceci: