flex Clean项目实际上做了什么?

时间:2014-01-23 10:58:09

标签: eclipse flex adobe flash swc

我有一个与java项目相关的flex应用程序。 Flex项目与另一个swc项目相关联。我使用maven一起构建它们。 构建之后,生成的swc的大小为2.5mb。但是当我部署应用程序并使用 project-> clean->清理所有项目手动清理项目时。我观察到swc的大小已降至1.7mb。

有人能告诉我日食在清理项目时有什么神奇之处吗?

在进一步挖掘之后,我发现我的项目目录结构中有一些未使用的非反映图像。他们在清洁时被排除在外吗?

需要立即帮助。

这是编译器设置..

    <compilerSourcePath>
      <compilerSourcePathEntry kind="1" linkType="1" path="colt-lib-flex/src/main/resources"/>
    </compilerSourcePath>
    <libraryPath defaultLinkType="0">
      <libraryPathEntry kind="4" path="">
        <excludedEntries>
          <libraryPathEntry kind="3" linkType="1" path="${PROJECT_FRAMEWORKS}/libs/flex.swc" useDefaultLinkType="false"/>
        </excludedEntries>
      </libraryPathEntry>
      <libraryPathEntry kind="3" linkType="1" path="D:/eclipse/m2repo/com/jpmc/bdias/matrix/WKSTFxFrameWork/1.0/WKSTFxFrameWork-1.0.swc" useDefaultLinkType="false"/>
      <libraryPathEntry kind="3" linkType="1" path="D:/eclipse/m2repo/com/adobe/as3corelib/1.0/as3corelib-1.0.swc" useDefaultLinkType="false"/>
      <libraryPathEntry kind="3" linkType="1" path="D:/eclipse/m2repo/com/adobe/AdobeSpellingUI/1.0/AdobeSpellingUI-1.0.swc" useDefaultLinkType="false"/>
      <libraryPathEntry kind="3" linkType="1" path="D:/eclipse/m2repo/com/adobe/AdobeSpellingEngine/1.0/AdobeSpellingEngine-1.0.swc" useDefaultLinkType="false"/>
      <libraryPathEntry kind="3" linkType="1" path="D:/eclipse/m2repo/com/adobe/flexlib/1.0/flexlib-1.0.swc" useDefaultLinkType="false"/>
    </libraryPath>
    <sourceAttachmentPath/>
  </compiler>
  <applications>
    <application path="colt-framework.as"/>
  </applications>
  <modules/>
  <buildCSSFiles/>
</actionScriptProperties>

2 个答案:

答案 0 :(得分:0)

在Flash Builder中清理项目,基本上是强制该项目重新开始。

我会注意到“清理”与导出发布版本不同。发布版本将从SWF中删除大量“调试内容”,并将其缩小。

Flex编译器将自动从已完成的SWF中删除未使用的文件/类。也许在您的Maven构建中,您明确地包含了未使用的文件。

我最好猜测为什么Flash Builder SWF比Maven生成的SWF小,这是因为编译器设置不同。但是,您必须包含编译器设置详细信息,以便我们确定。

答案 1 :(得分:0)

没有魔力。仅清除意味着删除先前构建创建的所有文件。你有可能选中“build in clean”,再次开始构建......

但是,通过maven构建并在eclipse中编译flex是两种不同的(独立的)事物。看起来eclipse和maven有不同的编译器配置。