Evaluating property equality in Nant

build-processnant

In my Nant script I would like to compare a property value to a known string. After reading the Nant Expressions documentation I believed I would be able to do a basic '==' comparison to evaluate as a boolean.

However given the script block:

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

When executed I recieve the following error:

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

This seems as though it should be simple (and probably is). How do I compare two strings, or properties in Nant to evaluate as a boolean?

Best Answer

It also works if you have the entire expression within the curly braces:

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