Flex 4.5.1 运行时 ReferenceError:错误 #1065:变量...未定义

2024-03-12

好的,我在这方面需要一些帮助。我从 Flash Builder 4 升级到 Flash Builder 4.5,并将我的项目切换到 4.5.1 sdk。我使用 ant 脚本来构建我的项目,因此我对其进行了修改以使用适当的 flexTasks.jar、mxmlc 等...

现在,如果我从一个空白的 bin-debug 文件夹开始,然后构建并运行应用程序,一切正常。但是,如果我随后进行代码更改并构建(不删除 bin-debug)然后运行应用程序,则会出现运行时错误:

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-debug/assets/icons 文件夹和 src/assets/icons/ 文件夹中。

抛出错误后,如果我点击 Flash Builder 中的继续按钮,它会在下一个指向图像文件的 Class 变量上再次抛出相同的错误。

有任何想法吗?删除/重新编译需要几分钟,所以显然这让我发疯。

编辑:在调试模式下编译的 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 =/sdks/4.5.1


答案埋在中间马克西姆的帖子 http://kachurovskiy.com/2010/storing-icons-in-external-zip-and-seamless-work-with-composite-icons/他在上面的评论中提到:

--> 尝试关闭增量编译。

我在这里遇到了同样的问题,一个简单的mimeType='application/octet-stream'嵌入,当阅读 Maxim 的文本时,这个问题跳出来了,因为我最近更改了自定义构建工具以使用增量编译:“嵌入有时会在增量编译期间失败”

此失败的结果是 .swf 包含如下内容:

<DefineBinaryData id='1' length='1024' />

看起来它是空的,而不是这个(来自工作文件):

<DefineBitsLossless2 id='1' encoding='base64'>
(.. in my case, 1024 bytes of base64-encoded data)
</DefineBitsLossless2>

(这为我解决了这个问题,非常感谢Maxim。我希望它也为你解决了这个问题。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flex 4.5.1 运行时 ReferenceError:错误 #1065:变量...未定义 的相关文章

  • Flash Builder 中的 TODO 任务列表

    Flash Builder 支持任务列表吗 我正在测试 PHP 的 Flash Builder 我可以在 PHP 代码中看到我的 TODO 但在 AS 或 MXML 中看不到 我找到了这个插件 http www richinternet d
  • 如何解决客户端-服务器应用程序中的无状态问题?

    我读过一些有关创建无状态网站的书籍 也读过一些有关有状态客户端应用程序的书籍 但是当您必须将两者结合起来时 就会出现很多复杂性 我们有一个 Flex 应用程序 需要通过 NET 服务将数据保存到数据库中 需要记住的事情是 并发 乐观 悲观
  • 覆盖 Object.toString 错误

    为什么这会在 Flash Builder 中产生错误 package public class Foo override public function toString String return Foo 制表符补全表明这可用于覆盖 错误
  • ArrayCollection 删除排序

    对我的数据提供程序 数组集合 应用数字排序后 我无法通过平铺列表对项目重新排序 我是否需要从 arrayCollection txt 中删除排序 如果是这样 这只是设置 collection sort null 的情况吗 var sortF
  • ActionScript 的 File.upload 不适用于 iOS 设备的 Air SDK

    我尝试使用 ActionScript 的 File upload 在 Air SDK for iOS 环境中上传文件 但 File upload 无法正常工作 调用 File upload 后 不会执行有关文件上传的处理程序 也不会捕获任何
  • Flex:获取自己的 SWF 文件名?

    有没有办法以编程方式确定我的类正在运行的 swf 文件名 Thanks Stage http livedocs adobe com flex 3 langref flash display Stage html has a 加载器信息 ht
  • Flex - 将滚动条的位置更改为 Horizo​​ntalList 组件的顶部

    默认情况下 Horizo ntalList 组件的水平滚动条位于底部 有没有办法重新定位它 使其位于顶部 为了清楚起见 我并不是指使用scrollToIndex或horizo ntalScrollPosition或类似的方法移动滚动位置 而
  • Flex/AS3很奇怪的简单数字运算问题

    我的问题在 Flex 中描述起来非常简单 0 8 0 2 0 6000000000000001 以前有人得到过这个 我确定前两个成员是 0 8 和 0 2 并且是 Number 类 为什么会发生这种情况 另一件事 我从 像这样输入 var
  • 如何使用 flash.filesystem.FileStream [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Will 如何使用flash filesystem FileStream FileStream as文件在哪里 班上flash files
  • 有没有好的 AS3 代码片段/示例的指针?

    我是 AS3 的新手 每天都在学习 我正在寻找好的 AS3 代码片段 示例 小项目 我可以将其用于学习目的和参考 不依赖于 Flash IDE 因为我使用 Flex SDK 和 Flash Develop 此外 我还专门寻找有关音频 视频流
  • 在 Flex SDK 上叠加 AIR SDK 后出现问题

    我尝试在 Windows 计算机上将 AIR SDK 覆盖到 Flex SDK 上 但之后遇到问题 我尝试覆盖两个 SDK 的多个官方版本 包括 Apache Flex SDK 并按照此处提到的步骤进行操作 http helpx adobe
  • 此 xpath 查询的 Flex/AS3/E4X 等效项是什么?

    鉴于此文档
  • Flex DataGrid:根据另一个值更改值?

    我在 Flex 中有一个 DataGrid 其中一列是复选框 另一列是数值 单击该复选框时 数值应更改 如果未选中该复选框 则数值应更改为 0 如果选中该复选框 则应更改为预定义的最小值 这是我的代码
  • flash/flex:渐进式下载与 rtmp

    我试图理解并真正确定何时在 Flex flash 中使用渐进式下载与 rtmp 看来主要的一点是 rtmp 不与 http 一起提供服务 而渐进式下载则由 http 提供 由于它不是 rtmp 因此资源受到保护 因为无法从 swf 外部连接
  • 从另一个域加载外部图像

    是否可以从另一个域加载图像 jpg png gif 并操作像素 我想当下载 复制图像时它就在我的域中 使用加载器并将内容添加到图像组件时 我在调试器中收到错误 我想这里有一些跨域策略在起作用 但在继续之前我需要更确定它是如何工作的 我想 如
  • Flex - 自动调整数据网格大小的问题

    我正在尝试创建一个数据网格 它将垂直调整大小以确保所有渲染器完整显示 此外 渲染器的高度可变 渲染器可以自行调整大小 一般来说 事件的流程如下 项目渲染器之一会自行调整大小 通常响应用户单击等 它调度父数据网格拾取的冒泡事件 DataGri
  • Flex 垂直数据网格

    我可以有一个垂直而不是水平显示数据的数据网格吗 例如 如果这是我的数据提供者 array firstname John lastname Doe array firstname Jack lastname Jill 我希望数据显示如下 Fi
  • 弹性图表隐藏数据提示

    我们从多个源获取数据 并且某个日期的数据可能存在也可能不存在 因此 对于没有数据的点 我们发送 NaN 问题 在下面的代码中 有没有办法不显示那些为空的数据提示 我添加了一个数据提示功能 但它确实显示了一个小的空方块 是否有可能甚至不显示
  • html 表单发布到 Flex 应用程序

    我有一个基本完成的 Flex 应用程序 它使用 Zend AMF 来连接 提供数据 我的应用程序确实有一个登录屏幕 看起来工作正常 现在我想在我的网站上添加另一个登录表单 允 许用户输入用户名 密码 提交表单时应将数据传递给 Flex 应用
  • 带有行号列的 Flex DataGrid

    我想扩展 DataGrid 组件 以便有一个 只读 列用于显示行号 就像您在电子表格中看到的那样 我看到这篇文章http www cflex net showFileDetails cfm ObjectID 735 http www cfl

随机推荐