2009-04-30 20 views
6

W moim skrypcie Nant chciałbym porównać wartość właściwości ze znanym ciągiem. Po przeczytaniu dokumentacji uwierzyłem, że będę w stanie wykonać podstawowe "==" porównanie, aby ocenić jako boolean.Ocena równości własności w Nant

Jednak biorąc pod uwagę blok skryptu:

<if test="${target.env} == Dev"> 
    <echo message="***** You are using DEV"/> 
</if> 

Po wykonaniu I odbieranie następujący błąd:

'Dev == Dev' is not a valid value for attribute 'test' of <if ... />. 
    Cannot resolve 'Dev == Dev' to boolean value. 
    String was not recognized as a valid Boolean. 

Wydaje się, że powinno być proste (i chyba jest). Jak porównać dwa ciągi lub właściwości w Nant, aby ocenić je jako wartość logiczną?

Odpowiedz

9

Zobacz na przykład: here. na przykład

<if test="${target.env}=='Dev'"> 
    .... 
</if> 
+1

piękne. wiedziałem, że to będzie łatwe! – berko

+1

Dla mnie to działało

16

Działa również jeśli masz całe wyrażenie w nawiasach klamrowych:

<if test="${target.env =='Dev'}"> 
    .... 
</if> 
+1

Ta metoda działa również w przypadku porównywania z pustym łańcuchem znaków (np. ), gdzie - jako najlepsza wersja nie jest – gerrod

4

jeśli chcesz porównać dwie zmienne $ {test.var1} i $ {} następnie test.var2

<if test="${test.var1 == test.var2}"> 
.... 
</if> 
+0

Dzięki. Czego szukam – Geddon