Samuel_D
05.07.2012, 11:22
Ошибка : сборка происходит только если build.xml открыт в Flashdevelop и его вкладка активна, иначе ошибка : "Не удалось открыть "src"".
Что делаю :
Создаю новый большой проект под Flashdevelop + Ant. Для теста создал build.xml :
<project name="project" basedir="." default="build_app">
<property file="${user.home}\ant\project.properties"/>
<taskdef resource="flexTasks.tasks" classpath="lib/flexTasks.jar"></taskdef>
<property name="PROJECT_NAME" value="SOME_NAME"></property>
<property name="APP_ROOT" value=""></property>
<property name="SOURCE_DIR" value="${APP_ROOT}src\"></property>
<property name="DEPLOY_DIR" value="${APP_ROOT}bin\"></property>
<target name="loader">
<mxmlc file="${SOURCE_DIR}Loader.as" output="${DEPLOY_DIR}\loader.swf" incremental="true">
<debug>false</debug>
<load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"></load-config>
<source-path path-element="${FLEX_HOME}/frameworks"></source-path>
<static-link-runtime-shared-libraries>true</static-link-runtime-shared-libraries>
</mxmlc>
</target>
</project>
И все было хорошо пока я не решил что пора разносить все по пакетам, для начала добавил новую переменную LOADER_DIR и прописал пакет в Loader.as -> package project.loader :
<project name="SOME_NAME" basedir="." default="build_app">
<property file="${user.home}\ant\project.properties"/>
<taskdef resource="flexTasks.tasks" classpath="lib/flexTasks.jar"></taskdef>
<property name="project" value="SOME_NAME"></property>
<property name="APP_ROOT" value=""></property>
<property name="SOURCE_DIR" value="${APP_ROOT}src"></property>
<property name="LOADER_DIR" value="${SOURCE_DIR}\${PROJECT_NAME}\loader\"></property>
<property name="DEPLOY_DIR" value="${APP_ROOT}bin\${PROJECT_NAME}\"></property>
<target name="loader">
<mxmlc file="${LOADER_DIR}Loader.as" output="${DEPLOY_DIR}\loader.swf" incremental="true">
<debug>false</debug>
<load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"></load-config>
<source-path path-element="${FLEX_HOME}/frameworks"></source-path>
<static-link-runtime-shared-libraries>true</static-link-runtime-shared-libraries>
</mxmlc>
</target>
</project>
Нарвался на ошибку :
Ошибка: Файл, найденный по исходному пути, должен иметь структуру пакета "", идентичную пакету определения "project.loader".
решил ее добавив в build.xml след. строку :
<source-path path-element="${SOURCE_DIR}"></source-path>
теперь все хорошо работает, но при условии что в Flashdevelop открыт build.xml для редактирования и обязательно закладка с кодом build.xml должна быть активной, иначе ошибка :
Не удалось открыть "src"
Кто знает в чем проблема ? А то совсем не по приколу перед каждой компиляцией открывать закладку с build.xml а потом назад к коду.
P.S. Flashdevelop 4.0.4 + Apache Ant 1.8.4 + Ant plugin for FD4
Что делаю :
Создаю новый большой проект под Flashdevelop + Ant. Для теста создал build.xml :
<project name="project" basedir="." default="build_app">
<property file="${user.home}\ant\project.properties"/>
<taskdef resource="flexTasks.tasks" classpath="lib/flexTasks.jar"></taskdef>
<property name="PROJECT_NAME" value="SOME_NAME"></property>
<property name="APP_ROOT" value=""></property>
<property name="SOURCE_DIR" value="${APP_ROOT}src\"></property>
<property name="DEPLOY_DIR" value="${APP_ROOT}bin\"></property>
<target name="loader">
<mxmlc file="${SOURCE_DIR}Loader.as" output="${DEPLOY_DIR}\loader.swf" incremental="true">
<debug>false</debug>
<load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"></load-config>
<source-path path-element="${FLEX_HOME}/frameworks"></source-path>
<static-link-runtime-shared-libraries>true</static-link-runtime-shared-libraries>
</mxmlc>
</target>
</project>
И все было хорошо пока я не решил что пора разносить все по пакетам, для начала добавил новую переменную LOADER_DIR и прописал пакет в Loader.as -> package project.loader :
<project name="SOME_NAME" basedir="." default="build_app">
<property file="${user.home}\ant\project.properties"/>
<taskdef resource="flexTasks.tasks" classpath="lib/flexTasks.jar"></taskdef>
<property name="project" value="SOME_NAME"></property>
<property name="APP_ROOT" value=""></property>
<property name="SOURCE_DIR" value="${APP_ROOT}src"></property>
<property name="LOADER_DIR" value="${SOURCE_DIR}\${PROJECT_NAME}\loader\"></property>
<property name="DEPLOY_DIR" value="${APP_ROOT}bin\${PROJECT_NAME}\"></property>
<target name="loader">
<mxmlc file="${LOADER_DIR}Loader.as" output="${DEPLOY_DIR}\loader.swf" incremental="true">
<debug>false</debug>
<load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"></load-config>
<source-path path-element="${FLEX_HOME}/frameworks"></source-path>
<static-link-runtime-shared-libraries>true</static-link-runtime-shared-libraries>
</mxmlc>
</target>
</project>
Нарвался на ошибку :
Ошибка: Файл, найденный по исходному пути, должен иметь структуру пакета "", идентичную пакету определения "project.loader".
решил ее добавив в build.xml след. строку :
<source-path path-element="${SOURCE_DIR}"></source-path>
теперь все хорошо работает, но при условии что в Flashdevelop открыт build.xml для редактирования и обязательно закладка с кодом build.xml должна быть активной, иначе ошибка :
Не удалось открыть "src"
Кто знает в чем проблема ? А то совсем не по приколу перед каждой компиляцией открывать закладку с build.xml а потом назад к коду.
P.S. Flashdevelop 4.0.4 + Apache Ant 1.8.4 + Ant plugin for FD4