マニフェストファイルについて

マニフェストファイルは、コンポーネントの名前空間をクラス名にマッピングします。マニフェストファイルでは、SWC にコンパイルされる前にコンポーネントによって使用されたパッケージ名が定義されます。マニフェストファイルは SWC ファイルのコンパイル時には必要ありませんが、ソースファイルの構成を維持する上で役立ちます。

マニフェストファイルでは、次のシンタックスが使用されます。

<?xml version="1.0"?>
<componentPackage>
    <component id="component_name" class="component_class"/>
    [...]
</componentPackage>

次に例を示します。

<?xml version="1.0"?>
<componentPackage>
    <component id="MyButton" class="package1.MyButton"/>
    <component id="MyOtherButton" class="package2.MyOtherButton"/>
</componentPackage>

マニフェストファイルの各 <component> タグの id プロパティは一意でなければなりません。これは Flex アプリケーションのタグに使用する名前です。たとえば、マニフェストファイルで idMyButton を定義するとします。

<component id="MyButton" class="asbutton.MyButton"/>

Flex アプリケーションでは MyButton がタグ名として使用されます。

<local:MyButton label="Click Me"/>

マニフェストファイルで id プロパティを入力するかどうかは任意です。入力しない場合は、クラス名をタグとして使用できます。この機能は、同一名の 2 つのクラスが別々のパッケージに含まれている場合に便利です。この場合は、次の例に示すように、マニフェストファイルを使用してタグを定義します。

<?xml version="1.0"?>
<componentPackage>
    <component id="BoringButton" class="boring.MyButton"/>
    <component id="GreatButton" class="great.MyButton"/>
</componentPackage>

SWC ファイルは、異なるパッケージに含まれる複数のコンポーネントで構成されます。このため、コンパイルエラーを回避する必要がある場合は、compc にはマニフェストファイルとともに SWC ファイルが格納されます。

SWC ファイルのコンパイル時には、namespace オプションおよび include-namespaces オプションを使用して、マニフェストファイルを指定します。まず、namespace オプションで名前空間とその内容を定義します。

-namespace http://mynamespace mymanifest.xml

次に、SWC ファイルに含める名前空間の内容を指定します。

-include-namespaces http://mynamespace


Flex 2.01