Это на самом деле не вопрос оценки, поскольку свойства либо заданы, либо не установлены до вызова цели.
РЕДАКТИРОВАТЬ: я посмотрел на источник 1.8.1 и логика выглядит следующим образом:
if (!testIfAllows()) {
project.log(this, "Skipped because property '" + project.replaceProperties(ifCondition)
+ "' not set.", Project.MSG_VERBOSE);
return;
}
if (!testUnlessAllows()) {
project.log(this, "Skipped because property '"
+ project.replaceProperties(unlessCondition) + "' set.", Project.MSG_VERBOSE);
return;
}
Так что unless
не будет иметь значения, пока не пройдет if
. Но имейте в виду, это не имеет никакого отношения к оценке свойств. Он просто смотрит на них, чтобы увидеть, установлены ли они.