好的,我需要一些幫助。我從Flash Builder 4升級到Flash Builder 4.5,並將我的項目切換到4.5.1 sdk。我使用一個ant腳本來構建我的項目,所以我修改它以使用適當的flexTasks.jar,mxmlc等...Flex 4.5.1運行時ReferenceError:錯誤#1065:變量...未定義
現在,如果我從一個空白bin-debug文件夾開始,然後構建並運行該應用程序一切正常。但是,如果我再修改代碼,並建立(不刪除的Bin調試),然後運行該應用程序,我得到一個運行時錯誤:
ReferenceError: Error #1065: Variable ... is not defined.
at flash.display::MovieClip/nextFrame()
at mx.managers::SystemManager/deferredNextFrame()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\managers\SystemManager.as:284]
at mx.managers::SystemManager/preloader_preloaderDocFrameReadyHandler()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\managers\SystemManager.as:2633]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.preloaders::Preloader/timerHandler()[E:\dev\4.5.1\frameworks\projects\framework\src\mx\preloaders\Preloader.as:515]
at flash.utils::Timer/_timerDispatch()
at flash.utils::Timer/tick()
再次,如果我刪除bin-debug文件夾,然後再次編譯運行沒有問題。
它所抱怨的變量總是一個類變量,指向用作圖標的圖像文件。代碼中,我用它來創建了var:
[Embed(source="/assets/icons/close-32x32.png")]
public var closeIcon:Class;
文件存在,而我證實,當它給出了錯誤的文件是在bin調試/資產/圖標文件夾和Src /資產/圖標/夾。
拋出錯誤後,如果我點擊Flash Builder中的繼續按鈕,它會在指向圖像文件的下一個類變量上再次拋出相同的錯誤。
任何想法?刪除/重新編譯需要幾分鐘時間,所以顯然這讓我很生氣。
編輯:Ant任務,在調試模式下編譯:
<target name="compile-debug">
<echo>Compile MXML</echo>
<mxmlc
file="${SRC_DIR}/${MAIN_SOURCE_FILE}"
debug="true"
optimize="false"
output="${DEBUG_DIR}/${APP_ROOT_FILE}"
append="true"
actionscript-file-encoding="UTF-8"
keep-generated-actionscript="false"
link-report="MyReport.xml"
maxmemory="2048m"
incremental="true">
<!-- Get default compiler options. -->
<load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"/>
<load-config filename="${FLEX_HOME}/frameworks/air-config.xml"/>
<!-- List of path elements that form the roots of ActionScript class hierarchies. -->
<source-path path-element="${FLEX_HOME}/frameworks"/>
<!-- Include Themes -->
<!-- NOTE: Spark theme required -->
<theme dir="${FLEX_HOME}/frameworks/themes/Spark/">
<include name="spark.css" />
</theme>
<theme dir="${FLEX_HOME}/samples/themes/spark_graphite/">
<include name="spark_graphite.css" />
</theme>
<!-- List of SWC files or directories that contain SWC files. -->
<compiler.library-path dir="${FLEX_HOME}/frameworks" append="true">
<include name="libs" />
<include name="../bundles/{locale}" />
</compiler.library-path>
<!-- uncomment if you have external libs (swc files) -->
<library-path dir="${LIB_DIR}/riaspace/" append="true">
<include name="*.swc" />
</library-path>
<library-path dir="${LIB_DIR}/AlivePDF/" append="true">
<include name="*.swc" />
</library-path>
<library-path dir="${LIB_DIR}/coltware/" append="true">
<include name="*.swc" />
</library-path>
</mxmlc>
</target>
其中FLEX_HOME = <路徑到Flash Builder> /sdks/4.5.1
我猜想你正在使用的是ANT腳本,但我不確定那會是什麼。 – JeffryHouser
嵌入指令是buggy和編譯器浪費時間,請嘗試這種方法 - http://kachurovskiy.com/2010/storing-icons-in-external-zip-and-seamless-work-with-composite-icons/ –
@ www.Flextras.com - 感謝您的回覆。我已經編輯了我的問題,包括我的螞蟻構建任務 – Abram