Я хочу установить свойство в задаче ant по-разному с помощью типа os.
Свойство - это каталог, в окнах я хочу, чтобы он был "c:\flag" в unix/linux "/opt/flag".
Мой текущий script работает только тогда, когда я запускаю его с целью по умолчанию, но почему?
<target name="checksw_path" depends="if_windows, if_unix"/>
<target name="checkos">
<condition property="isWindows">
<os family="windows" />
</condition>
<condition property="isLinux">
<os family="unix" />
</condition>
</target>
<target name="if_windows" depends="checkos" if="isWindows">
<property name="sw.root" value="c:\flag" />
<echo message="${sw.root}"/>
</target>
<target name="if_unix" depends="checkos" if="isLinux">
<property name="sw.root" value="/opt/flag" />
<echo message="${sw.root}"/>
</target>
Во всех моих объектах ant я добавил "depend = checksw_path".
Если я запускаю цель по умолчанию в Windows, я правильно понял "c:\флаг", но если я запустил цель не по умолчанию, у меня получилось, что отладка идет в if_windows, но инструкция "" не устанавливает свойство, которое остается /opt/flag. Я использую ant 1.7.1.