По первому вопросу:
Если переменная предназначена для условий среды вне приложения, сделайте ее переменной среды (ОС).В противном случае, сделайте это собственностью.Очевидно, что это не полностью отвечает на ваш вопрос, поскольку вам все еще нужно определить, что это значит (для вашего приложения или системы), чтобы сказать, что переменная зависит от среды .
Другим руководством было бы спросить себя, можете ли вы (или будете иметь) более одного приложения, которое зависит от разных значений одной и той же переменной, причем все они могут быть развернуты в одной и той же системе.В таком случае мы не можем использовать переменную окружения, а переменные на основе свойств - единственный путь.
Для второго вопроса:
Использовать встроенные в Antв Fail задача по отмене сборки, если условие или свойство не задано.Из документации Ant по задаче Fail вы можете получить представление о том, как это сделать, если вы используете переменную на основе свойств:
<fail>
<condition>
<not>
<isset property="thisdoesnotexist"/>
</not>
</condition>
</fail>
Есливы решаете использовать переменную среды; вы просто используете атрибут environment задачи Property , чтобы подключиться к переменным среды (OS)как если бы они были свойствами сборки (см. соответствующую документацию для примеров.)
Надеюсь, это поможет.