AIRを使ってMXMLのコンパイルをするとき、flexSDK/bin/mxmlc.exe を使いますが、これを使うととても遅いです。。
そこで、代わりにfcsh.exeを使うと比較的早くコンパイルできることが可能です。その方法をご紹介
まずは、fcsh.exe を起動します。
すると、
(fcsh)
というプロンプトが出てきます。ここで、
(fcsh) mxmlc +configname=air {mxmlファイルパス}
を指定してあげると
(fcsh) mxmlc +configname=air {mxmlファイルパス} fcsh: コンパイルのターゲット ID として 1 が割り当てられました Loading configuration file .../air-config.xml ・・・・・・・・・・・・.swf (....bytes)
という感じで、swfを生成してくれます。
1回目は mxmlcと同じぐらい遅いですが、2回目以降は結構早い。
同じファイルをちょっと修正してまたコンパイルしたいときには、ターゲットIDを使ってコンパイルすると尚早くなります。
(fcsh) compile 1
上記は ターゲットIDが 1に割り当てられたものを再実行する場合です。
もし、前回とmxmlのファイルが変わっていない場合には
(fcsh) compile 1 最後のコンパイル以降何も変更されていません。スキップします... ・・・・・・・・・・・・.swf (....bytes)
・・・なんて言ってくれたりもします。
MXMLのコンパイル (shin1) MXMLCのコンパイルオプション
mxmlc -help list details
で表示すると指定できるオプションが表示されます。
以下は、FlexSDK3.1で出力してみたそのままになりますが。。。 ここで初めてエイリアスってのがあって省略されているんだーというのを知った。。
-benchmark パフォーマンスベンチマークを出力します
-compiler.accessible エイリアス -accessible アクセス可能な SWF を生成します
-compiler.actionscript-file-encoding <string> エイリアス -actionscript-file-encoding ActionScript ファイルのエンコーディングを指定します。AS3 ソースファイルに BOM がない場合、コンパイラはこのファイルエンコーディングを使用します。
-compiler.context-root <context-path> エイリアス -context-root サービスチャンネルのエンドポイントの {context.root} トークンを置き換えるパス
-compiler.debug エイリアス -debug デバッグに適したムービーを生成します
-compiler.external-library-path [path-element] [...] エイリアス -el コンパイル対象であるが、リンクからは除外される SWC ファイルまたはディレクトリの一覧 (反復可能)
-compiler.fonts.advanced-anti-aliasing エイリアス -advanced-anti-aliasing 埋め込みフォントの高度なアンチエイリアスを有効にして、小さいフォントを見やすくします。
-compiler.fonts.flash-type エイリアス -flash-type 埋めみフォントの FlashType を有効にして、小さいフォントを見やすくする
-compiler.fonts.max-glyphs-per-face <string> エイリアス -max-glyphs-per-face 各フォントについてサーバーにキャッシュできる文字のグリフアウトラインの最大数を設定します。デフォルト値は 1000 です。
-compiler.include-libraries [library] [...] エイリアス -include-libraries SWF に完全にインクルードされるライブラリ (SWC) の一覧 (反復可能)
-compiler.incremental エイリアス -incremental インクリメンタルコンパイルを有効にします
-compiler.library-path [path-element] [...] エイリアス -library-path SWC ファイルまたは SWC ファイルを格納するディレクトリの一覧 (反復可能)
-compiler.locale [locale-element] [...] エイリアス -locale 国際化用にロケールを指定します (反復可能)
-compiler.mxml.compatibility-version <version> エイリアス -compatibility-version 互換性のあるバージョンを指定します (compatibility-version=2.0.1 など)
-compiler.namespaces.namespace <uri> <manifest> エイリアス -namespace MXML エレメントとして使用するためのコンポーネントのマニフェストに関連付ける URI を指定します (反復可能)
-compiler.optimize エイリアス -optimize リンク後の SWF の最適化を有効にします
-compiler.services <filename> エイリアス -services Flex データサービス設定ファイルへのパス
-compiler.show-actionscript-warnings エイリアス -show-actionscript-warnings 有効であるが部分的に正しくないコードを検出するモードで AS3 コンパイラを実行します
-compiler.show-binding-warnings エイリアス -show-binding-warnings データバインディングコードから生成される警告を表示するかどうかを切り替えます
-compiler.show-shadowed-device-font-warnings エイリアス -show-shadowed-device-font-warnings toggles whether warnings are displayed when an embedded font name shadows a device font name
-compiler.show-unused-type-selector-warnings エイリアス -show-unused-type-selector-warnings 使用されていない CSS タイプセレクタから生成される警告を表示するかどうかを切り替えます
-compiler.source-path [path-element] [...] エイリアス -sp ActionScript クラス階層のルートを形成するパスエレメントの一覧 (反復可能)
-compiler.strict エイリアス -strict 厳密なエラーチェックモードで AS3 コンパイラを実行します
-compiler.theme [filename] [...] エイリアス -theme テーマとして適用する CSS または SWC ファイルの一覧 (反復可能)
-compiler.use-resource-bundle-metadata エイリアス -use-resource-bundle-metadata リソースバンドルがアプリケーションに含まれているかどうかを調べます。
-help [keyword] [...] キーワードは 'syntax','list','advanced','aliases','details',または検索語句です
-include-resource-bundles [bundle] [...] 出力 SWC に含めるリソースバンドルの一覧 (反復可能)
-licenses.license <product> <serial-number> エイリアス -license 製品とシリアル番号を指定します。 (反復可能)
-load-config <filename> 設定オプションを含むファイルをロードします (反復可能)
-metadata.contributor <name> エイリアス -contributor SWF メタデータに保存されている投稿者の名前 (反復可能)
-metadata.creator <name> エイリアス -creator SWF メタデータに保存されている作成者の名前 (反復可能)
-metadata.date <text> エイリアス -date SWF メタデータに保存されている作成日
-metadata.description <text> エイリアス -description SWF メタデータに保存されているデフォルトの説明
-metadata.language <code> エイリアス -language SWF メタデータに保存されている言語 (EN、FR など) (反復可能)
-metadata.localized-description <text> <lang> エイリアス -localized-description SWF メタデータに保存されているローカライズされた RDF/XMP の説明 (反復可能)
-metadata.localized-title <title> <lang> エイリアス -localized-title SWF メタデータに保存されているローカライズされた RDF/XMP タイトル (反復可能)
-metadata.publisher <name> エイリアス -publisher SWF メタデータに保存されている発行者の名前 (反復可能)
-metadata.title <text> エイリアス -title SWF メタデータに保存されているデフォルトのタイトル
-output <filename> エイリアス -o 作成する SWF ムービーのファイル名
-runtime-shared-libraries [url] [...] エイリアス -rsl アプリケーションが起動する前にロードされるランタイム共有ライブラリの URL の一覧 (反復可能)
-runtime-shared-library-path [path-element] [rsl-url] [policy-file-url] [rsl-url] [policy-file-url] エイリアス -rslp (反復可能)
-static-link-runtime-shared-libraries エイリアス -static-rsls ドメイン間の rsl によって指定されたライブラリを静的にリンクします。
-target-player <version> アプリケーションがターゲットとするプレーヤーのバージョンを指定します。より新しいバージョンを必要とする機能は、アプリケーションにコンパイルされません。サポートされる最小の値は「9.0.0」です。
-use-network ネットワークリソースへのアクセスについて SWF にフラグを設定するかどうかを切り替えます
-version プログラムのビルドバージョンを表示します
-warnings 警告の表示を切り替えます
オプションの指定方法 リストで指定するオプションの指定は、スペース区切りかカンマ区切りでおこないます。 -var val1 val2 もしくは -var=val1, val2
スペース区切りの場合には、リストの終わりは -- (ハイフン二つ)で指定します。 -var val1 val2 -- -next_option
カンマ区切りの場合には、リストの終わりはカンマ無しにすればOK。 -var=val1, val2 -next_option
+=を使うと値の追加ができます。 mxmlc -library-path+=c:/myfiles (c:/myfiles ディレクトリを library-path オプションに追加)
|