知ってると便利かなーと思ったコンパイルオプションをリストアップしてみました。
コンパイル対象はJSに限定しています。
基本オプション
-cp コンパイル対象ファイル・ディレクトリ
コンパイル対象のhxファイルが置かれたディレクトリを指定します
-main クラス名
スタートアップクラスを指定します。
packageを作成している場合は、クラス名の前に指定します
-js 出力JSファイルパス
出力するJSファイルを指定します。
-lib ライブラリ名
利用するライブラリを指定します。
--next
複数のコンパイルを記述する場合、--next
に続けてコンパイル対象ファイルなどのオプションを記述します。
-cp src/pj1
-main pj1.Main
-js pj1.js
--next
-cp src/pj2
-main pj2.Main
-js pj2.js
コンパイル制御
コンパイル対象共通
-D コンパイルフラグ
コンパイルフラグを設定した時のみ、コンパイル対象のコードをコンパイルします。
class Main {
import js.Lib;
public static function main() {
#if COMPILE
Lib.alret("defined compile flg.");
#end
}
}
この時、コンパイルオプションに-D COMPILE
を指定しなかった場合、
Lib.alret("defined compile flg.");
と記述された行は無視されてコンパイルされます。
-resource ファイルパス@キー
ファイルパスに指定したリソースファイルをプログラム中から指定したキーを利用して呼び出す事が出来ます。
指定したファイルはシリアライズされコンパイル後のコード中にインラインで埋め込まれます。
-dce no
コンパイル時に不要なコードが削除されません。
-dce std
コンパイル時に不要な標準ライブラリのコードが削除されて出力されます。
これはhaxeのコンパイル時の標準オプションです。
-dce full
コンパイル時に不要なコードが削除されて出力されます。
--no-output
コンパイル後のファイルを出力しません。
--no-traces
コード中のtrace()
を無視してコンパイルします。
javascript用オプション
-D js-classic
出力するJSコードがグローバルスペースに展開されます。
(デフォルトで出力されるJSコードは即時関数でラップされ、strictモードになります)
その他
-cmd shellコマンド等
コンパイル後に実行したいコマンドを指定します。
例えば、jsファイルを生成後に圧縮するコマンドを指定しておく…といった使い方が出来ます。
-xml ファイル名.xml
コンパイル対象のコードからhaxedocで利用するためのxmlを出力します。
手元にflash環境が無いので調べられていないのですが、
--gen-hx-classes
というオプションがswfファイル?からhaxeのexternを生成するというようなオプションで非常に便利そうだなと思いました。
明日は@mandel59さんです。
よろしくおねがいします。