1

非常に単純なアプリ Main.mxml をコンパイルしています。

<?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:Label
        text="Flex"/>

</s:Application>

mxmlc (SDK 4.0.0.14159):

mxmlc 
-context-root=a 
-services=.\src\main\webapp\WEB-INF\flex\services-config.xml 
src\main\flex\Main.mxml 
-output src\main\webapp\Main.swf

また、Flexmojos 3.9 & 4.0-RC2 では、SDK 4.0.0.14159 を使用します。

<configuration>
    <output>src/main/webapp/Main.swf</output>
    <services>src/main/webapp/WEB-INF/flex/services-config.xml</services>
    <contextRoot>a</contextRoot>
</configuration>

両方のビルドからの出力により、期待どおりに機能する有効な swf ファイルが作成されますが、mxmlc からの swf ファイルは Flexmojos バージョンよりもはるかに小さくなっています。

mxmlc      Main.swf   43k
flexmojos  Main.swf  367k

私は Eclipse (mxmlc を使用) で開発していますが、マスター ビルド スクリプト (flexmojos を使用) はまったく異なるファイルを生成しているため、これは非常に心配です。

これがなぜなのか、それを修正する方法を誰か教えてもらえますか?

ありがとう

4

2 に答える 2

3

flexmojos を使用したコンパイルでは、出力 swf にフレックス フレームワーク クラスが含まれているようです。また、あなたのケースで mxmlc を使用してコンパイルすると、フレームワーク swfs が RSL として使用されます。

于 2011-10-05T13:49:23.487 に答える
1

MXMLC はflex-config.xml、Flex ランタイムのデフォルトのリンケージ (主に RSL) を指定する Flex SDK インストールからプルされます。つまり、より小さな SWF ファイルになります。

私は Flexmojo の仕組みに詳しくないので、同等の引数を設定する方法を学ぶ必要があります。Flexmojos に同じデフォルトの構成 XML ファイルを使用するように指示できる場合があります。

Gradleを使用して Flex ビルドを実装しました。Flash Builder (Eclipse) と同じコンパイラと同じ設定を使用することになっているにもかかわらず、ファイル サイズが異なります。ただし、違いは非常に小さく、依存関係は期待どおりにリンクされています。 .

于 2011-10-05T13:59:05.463 に答える