Как работает механизм импорта файлов в Apache ANT - PullRequest
2 голосов
/ 13 июля 2011

Я работаю над созданием крупномасштабного проекта, в рамках сборки я определил путь в каком-то xml и переопределил его в другом xml, который его импортирует (или импортирует файл, который его импортирует). Я заметил, что порядок импорта и расположение переопределенного тега пути в импортируемых файлах изменяет поведение сборки. Но я не мог найти логику за этим. Как работает импорт? Спасибо

1 Ответ

0 голосов
/ 14 июля 2011

Значение свойства ant нельзя изменить после установки. Если вы импортируете файл, и файл устанавливает некоторые свойства, любое другое объявление свойства после импорта с тем же именем, что и у свойства в импортированном файле, будет проигнорировано.

Предположим, у вас есть внешний файл file1.xml, который объявляет свойство foo.

file1.xml: <property name="foo" value="bar"/>

Затем в главном файле, где вы объявляете свойство, foo имеет значение относительно того, куда вы импортируете file1.xml.

Предположим, вы делаете:

<import file="file1.xml"/>

<property name="foo" value="baz"/>

Тогда свойство foo будет иметь значение bar. С другой стороны, если вы делаете:

<property name="foo" value="baz"/>

<import file="file1.xml"/>

Тогда свойство foo будет иметь значение baz.

Мораль этой истории - определить любые свойства, значение которых вы хотите переопределить, прежде чем импортировать файл, который также объявляет эти свойства.

См. http://ant.apache.org/manual/Tasks/property.html для документации задачи свойства ant.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...