Задайте свойство внутри одной цели ant и используйте его в другой цели
Мой файл сборки
<target name="default">
<antcall target="child_target"/>
<echo> ${prop1} </echo>
</target>
<target name="child_target">
<property name="prop1" value="val1"/>
</target>
Я получаю сообщение об ошибке ${prop1}
. Как установить свойство в цель?
Ответы
Ответ 1
antcall создает новый проект. Из документации Ant:
Вызываемая цель запускается в новом проект; имейте в виду, что это означает свойства, ссылки и т.д., установленные так называемые цели не будут сохраняться к вызывающему проекту.
Использование зависит от этого:
<project default="default">
<target name="default" depends="child_target">
<echo>${prop1}</echo>
</target>
<target name="child_target">
<property name="prop1" value="val1"/>
</target>
</project>
Ответ 2
Старый и, вероятно, мертвый вопрос, который я знаю, но файл свойств, загруженный за пределы целевых объектов, но внутри проекта также будет работать. Android делает это с помощью local.properties, например:
<?xml version="1.0" encoding="UTF-8"?>
<project name="avia" default="help">
<!-- The local.properties file is created and updated by the 'android' tool.
It contains the path to the SDK. It should *NOT* be checked into
Version Control Systems. -->
<property file="local.properties" />