Я использую Ant и mxmlc для компиляции классов ActionScript и MXML в swfs, сохраняя при этом организацию по умолчанию проекта Flex Builder (Flash Builder). Многие из моих классов ActionScript находятся в подкаталогах проекта, поэтому мой проект организовываются так:Как получить относительный путь с помощью Ant
MyBigProject
-build-imports.xml
-build.xml
-bin-debug
--src
---flash
---app
----CoolWidget1.swf
---Main.swf
--test
-src
--flash
---app
----build-imports.xml
----build.xml
----CoolWidget1.as
--build-imports.xml
--build.xml
--Main.mxml
-test
Этой структура каталогов поддерживает структуру каталогов проекта Flash Builder, так что я могу выполнить кнопочный строит из флэша Builder IDE. Я добавил XML-проект Ant для этого проекта, поэтому я также могу построить из командной строки. Я пытаюсь создать скрипты для создания переносимых муравьев, которые требуют минимальных изменений для повторного использования в других проектах. У меня есть все, что я хочу, кроме как вывести относительные пути.
Нарастание imports.xml файл в корневом каталоге проекта содержит следующие элементы:
<project name="project.root.imports">
<dirname property="project.root.dir" file="${ant.file.project.root.imports}"/>
</project>
Хотя папки суб проекта содержат наращивание imports.xml со следующим:
<project name="MyBigProject.src.flash.app.imports">
<import file="../build-imports.xml" />
</project>
Обратите внимание, что sub project build-imports.xml подходит к каталогу hiearchy, пока не попадет в корневой файл build-imports.xml, и там я установил project.root.dir.
Затем я могу использовать $ {project.root.dir}/bin-debug, чтобы указать, где разместить мои двоичные файлы. Единственная проблема, которую я имею, - я не знаю, как создать ту же структуру каталогов, что и под моей папкой src. Мне нужно иметь возможность выводить относительный путь или выполнять некоторые манипуляции с строкой для создания новых каталогов.
Учитывая вышеизложенную информацию, как я беру известный путь:
$ {project.root.dir}/SRC/приложение
и получить путь к каталогу, как:
$ {project.root.dir }/bin-debug/app
Я нашел некоторую информацию о задаче свойства Ant-contribu propertyregex, которая позволила бы выполнять некоторые манипуляции с строкой, но я надеюсь, что там есть гуру мурата, который может указывать на простой решение. Я считаю, что это очень вероятно, как новичок-новичок, я просто игнорирую очевидное.
Обратите внимание, что вам не нужно определить объект пути первым. Также было бы включено: < путь location = "." /> Как дочерний элемент pathconvert вместо атрибута refid. –
Я не знаю, что не так, но выше упоминания кусок не работает как аспект в linux. В моем случае это работает для окон. Может ли кто-нибудь ответить на то же самое? –