2010-07-30 56 views
0

我有一个可以工作的AS3项目,它可以很好地编译成SWF文件。我添加了一个新文件(通过各种方式:导入,拖放,新建),但它不编译这个新文件。我正在使用Flex Builder 3.我尝试了一个干净的重建。我试过重命名。它可以很好地拾取现有文件,但不是新文件。该项目设置为使用HTML包装器。我看到一些构建文件(我认为)。新文件位于现有的文件夹和包中。Flex Builder:没有拾取新文件

任何想法可能是错误的?

+0

你在哪里添加文件 - src文件夹? – Amarghosh 2010-07-30 04:30:00

+3

请记住添加一个文件是不够的,该文件的内容必须在您的应用程序的某个地方用于编译器将其链接到构建中。 – 2010-07-30 07:44:20

回答

2

首先,SWF编译器将优化您的结束代码。如果您从未在应用程序的任何位置使用类或创建实例,该代码将永远不会在您的应用程序中编译。如果您在后端使用Flex Remoting,这种情况很常见;并且VAlue对象从不直接实例化,而是总是返回它的数组。你会发现你得到了很多“通用对象”,而没有Flex Remoting网关的后端对象到AS3对象的转换。

您没有指定要添加的文件类型。如果它是一个ActionScript文件,它不会自动在swf中编译。你必须以某种方式将它“包含”在另一个类中。如果它是一个ActionScript类或MXML组件,请确保您在代码中以某种方式使用该类。如果它是另一种文件类型,例如图像或其他资源,则必须以某种方式将该文件嵌入到代码中。

如果您要告诉我们什么类型的文件未被添加到最终的SWC中,我们可能会提供更多的帮助。同时告诉我们你可以告诉你。

+0

雅我发现了一个小时后,我不得不使用该文件。这是日食还是闪光的细微差别? – tom 2010-08-01 03:55:45

+0

我想说这是一个Flex编译器的细微差别;因为编译器会优化最终应用程序中未使用的类,以最大限度地减小文件大小。我无法说出Flash Pro [或其他SWF Building方案]如何工作。 – JeffryHouser 2010-08-01 20:56:55