我正在使用Flash Builder 4.7中的Flash移动项目。在MXML中嵌入spark SWFLoader对象的源时,我得到4个“Flex问题”错误。我得到的错误发生在一系列Flex SDK中,从4.6到4.14。多年来,我一直没有遇到过这样的问题,但最近这种情况开始出现了。类似的代码在同事计算机上工作,尽管我们的设置看起来完全相同。要解决这个错误,我创建了一个新的Flex手机项目,在MXML是唯一代码:我得到Flash Builder SWFLoader嵌入错误
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark">
<s:SWFLoader source="@Embed(source='Logo.swf')"/>
</s:Application>
的错误是:
1084: Syntax error: expecting rightbrace before end of program. line 29
1084: Syntax error: expecting rightbrace before stream. line 25
1084: Syntax error: expecting rightparen before s. line 25
1094: Syntax error: A string literal must be terminated before the line break. line 25
没有对错误给出的路径。我的项目显然没有第25或第29行,所以我不知道这个错误甚至会发生在哪里。
'Logo.swf'文件位于正确的位置。它只是一个没有动作脚本代码的矢量图形。
编辑: 问题的根源似乎是嵌入SWF的本质,甚至是SWFLoader的外部。下面的MXML代码,在地方的SWFLoader嵌入的嵌入脚本,给出相同的4个错误的前面:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark">
<fx:Script>
<![CDATA[
[Embed(source="Logo.swf")]
[Bindable]
public var swfCls:Class;
]]>
</fx:Script>
</s:Application>
必须有更多的地方参与。 – BadFeelingAboutThis
我同意,这是我正在寻找的那种建议。该项目中唯一的文件是'Test.xmxml','Test-app.xml'和'Logo.swf'。没有我写的动作脚本。 – MMPGreg
我建议您验证您的项目构建路径库,您的sdk版本 –