укажите имя выходного файла flash builder 4 - PullRequest
1 голос
/ 29 сентября 2011

Это должно быть легко, но я не могу его найти. Я хочу, чтобы мои файлы .html и .swf были названы иначе, чем имя проекта. Имя проекта foo, я хочу, чтобы выходные данные были bar.html и bar.swf. Спасибо.

1 Ответ

1 голос
/ 23 ноября 2011

Flextras был на правильном пути. Вы не можете изменить имя выходного файла (даже используя параметр компилятора "-output"), если вы компилируете в Flash Builder. Не уверен почему.

Решение, которое сработало для меня, заключалось в использовании некоторой косвенности:

  1. используйте mxmlc для компиляции в ApplicationClass.swf
  2. скопируйте командную строку ApplicationClass.swf в YourCustomSwf.swf
  3. командная строка запускает YourCustomSwf.swf

Это можно сделать либо с помощью простого (зависящего от платформы) сценария сборки, либо с помощью Flex Ant Tasks. Я настоятельно рекомендую последнее; прост в настройке , хорошо интегрируется с Flash Builder и (в основном как независимое от платформы решение) будет работать в многопользовательской среде с несколькими ОС. Вот вышеперечисленные шаги как задачи муравья, которые будут выполнять магию для вас:

<project name="sample-build" default="run-your-swf">    
    <property file="${basedir}/your.properties.file"/>

    <target name="compile-your-app">
        <mxmlc file="${SOURCE_DIR}/ApplicationFile.mxml" compiler.debug="${IS_DEBUG}" incremental="true" failonerror="true">
            <load-config filename="${DEFAULT_FLEX_CONFIG}"/>
            <define name="CONFIG::DEBUG" value="${IS_DEBUG}"/>
            <define name="CONFIG::FLASH_AUTHORING" value="${IS_FLASH_AUTHORING}"/>
            <define name="CONFIG::IS_RELEASE" value="${IS_RELEASE}"/>
        </mxmlc>
    </target>

    <target name="rename-your-swf" depends="compile-your-app">
        <copy file="${OUTPUT_DIR}/feed/FeedComponent.swf" tofile="${OUTPUT_DIR}/YourNewSexyFilename.swf"/>
    </target>

    <target name="run-your-swf" depends="rename-your-swf">
        <exec executable="${STANDALONE_FLASH_DEBUG_PLAYER}">
            <arg line="${OUTPUT_DIR}/YourNewSexyFilename.swf"/>
        </exec>
    </target>

</project>

вам нужно только определить все $ {VARIABLES}, которые я перечислил в "your.properties.file", например так:

FLASH_PLAYER_DEBUG=/Applications/Adobe Flash CS5/Players/Debug/Flash Player Debugger.app/Contents/MacOS/Flash Player Debugger
IS_DEBUG=true

(и так далее)

И вообще - что в имени? Программа под любым другим именем была бы такой же крутой ... B -)

...