カスタムコンポーネントは、アプリケーションの一部として使用できるようにコンパイルします。コンポーネントのコンパイルは、アプリケーション全体をコンパイルするときに実行することも、個別にコンパイルして後でアプリケーションにリンクすることもできます。
作成した Flex コンポーネントは、次の表に示すように、いくつかのファイル形式で配布できます。
|
ファイル形式 |
拡張子 |
説明 |
|---|---|---|
|
MXML |
.mxml |
MXML ファイルとして実装されたコンポーネントです。 |
|
ActionScript |
.as |
ActionScript クラスとして実装されたコンポーネントです。 |
|
SWC |
.swc |
MXML または ActionScript ファイルとして実装され、SWC ファイルとしてパッケージされたコンポーネントです。SWC ファイルには、パッケージして複数のアプリケーション間で再利用するコンポーネントが含まれます。SWC ファイルは、アプリケーションの SWF ファイルを作成する際、アプリケーション内にコンパイルされます。 |
|
RSL |
.swc |
MXML または ActionScript ファイルとして実装され、RSL ファイルとしてデプロイされたコンポーネントです。RSL はアプリケーションの SWF ファイルとは別にダウンロードされるスタンドアローンファイルで、複数のアプリケーション SWF ファイルで使用するためにクライアントコンピュータ上にキャッシュされます。 |
コンポーネントを使用するアプリケーションをコンパイルするときは、ファイルの形式と場所を考慮する必要があります。
Adobe Flex には mxmlc と compc の 2 種類のコンパイラが用意されています。mxmlc コンパイラでは、MXML、ActionScript、SWC、および RSL ファイルを 1 つの SWF ファイルにコンパイルできます。アプリケーションをコンパイルし、Web またはアプリケーションサーバーにデプロイしたら、ユーザーが HTTP 要求で SWF ファイルをダウンロードし、使用コンピュータで再生できるようになります。
compc コンパイラは、コンポーネント、クラス、およびその他のファイルを SWC ファイルまたは RSL にコンパイルする場合に使用します。
compc コンパイラおよび mxmlc コンパイラはいずれも、Adobe® Flex™ Builder™ またはコマンドラインから使用できます。コンパイラの使用方法について詳しくは、Flex コンパイラの使用とプロジェクトの構築を参照してください。
mxmlc コンパイラの使用方法の最も基本的な例は、MXML ファイルに SWC ファイル内のコンポーネントや ActionScript クラスなどの外部依存関係がない場合です。この場合は、mxmlc を起動して、MXML ファイルを指定します。
$ mxmlc c:/myfiles/app.mxml
デフォルトのオプションは、SWF ファイルにコンパイルするターゲットファイルで、値を指定する必要があります。オプションの一部としてスペース区切りのリストを使用している場合は、次の例に示すように、ターゲットファイルを追加する前に、リストの最後にハイフンを 2 つ指定します。
$ mxmlc -option arg1 arg2 arg3 -- target_file.mxml
Flex コンパイラでは、すべてのファイルシステムについて、大文字と小文字を区別するファイルルックアップが使用されます。Macintosh や Windows ファイルシステムなどの大文字と小文字が区別されないファイルシステムで、大文字と小文字の使い方に誤りがあるコンポーネントを使用しようとすると、Flex コンパイラは、大文字と小文字が不一致であるというエラーを生成します。UNIX ファイルシステムなど大文字と小文字が区別されるファイルシステムで、大文字と小文字の使い方に誤りがあるコンポーネントを使用しようとすると、Flex コンパイラは、コンポーネントが見つからないというエラーを生成します。
通常は、ActionScript ソースパスに含まれているディレクトリ内にコンポーネントファイルを配置します。アプリケーションのルートディレクトリ、そのサブディレクトリ、コンパイラに対して指定したディレクトリなどです。ディレクトリを指定するには、mxmlc コンパイラで source-path オプションを使用するか、Flex Builder のプロジェクトプロパティダイアログボックスを使用します。
カスタムコンポーネントを編成する上で、次の規則が役に立ちます。
このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート