目次
概要AspectJ同梱docディレクトリのファイル ajc-ref.html の要約です。ajcコマンドは AspectJとJava言語のファイルをコンパイルし、アスペクトを任意のJavaVM(1.1以降)準拠のクラスファイルにweaving(以下織り込み)する。 ajc [Options] [files... | @files | -argfile file...]オプションの後の引数でコンパイル対象のソースファイルを指定する。指定の仕方はコマンドライン引数として直接与えるかファイルに列挙する。-argfileと@fileの指定の仕方は同じ意味で、指定したファイルに全てのコンパイル対象ファイルが列挙されていることを意味する。これらファイル中の任意の行は一つのオプションかファイル名を持つ。Java言語仕様にあるように、//から行末まではコメント扱いとなる。 【注意】コンパイルするaspectや pointcutに関連する全てのファイルにパスが通るようにする必要がある。何故ならば、javacとは異なり、ajcはクラスのsourcepathを検索しないからである。-sourcerootsオプションで全ての.ajと.javaファイルを含むディレクトリで指定した方がよい。 ajcオプション一覧inpath, injars, aspectpath, outjar,argfile,incremental, sourceroots, emacssym, Xlint, Xlintfile, classpath(又はcp), bootclasspath, d, encoding, 1.3, 1.4, source, target, deprecation, nowarn, warn:[色々], g:[色々], log, proceedOnError, verbose, referenceInfo, progress, time, noExit, repeat, help(又は ?), version(又は v), showversion options-injarsオプション-inpathにこの機能が含まれるので、使う必要なし。-inpath PathPath上のZipファイルかディレクトリ上の任意の.classファイルをソースバイトコードとする。出力はこれらのクラスとなり、適用可能ならaspectを織り込んだものとなる。 Pathは単一引数で、システム依存のパスデリミタ(:か;)で区切られたZipファイルかディレクトリ。-argfile File省略-outjar output.jar出力クラスをoutput.jarにまとめて出力する。-incrementalコンパイラを継続的に動作させる。最初のコンパイル後、STDINを待ってwaitする。'q'の入力があると終了する。これは必要なコンポーネントのみのrecompileとなるので、普通に2回目のコンパイルをするより早く済むだろう。-sourcerootsオプションが必須である。-sourceroots DirPath?DirPath?配下の任意の .java及び.ajソースファイルを見つけ、buildする。 classpathと同じように、DirPath?はシステム依存のパスデリミタで区切られた ディレクトリパス名の単一引数である。-incrementalの必須要素である。-emacssymemacs向け機能だから知らない。-Xlintデフォルトで有効な -Xlint:waringと同じオプション。-Xlintfile PropertyFile?crosscutting messagesのレベルを定めるためのプロパティファイルを指定する。 PropertyFile?は Javaの .propertiesファイルのパスである。 aspectjtools.jarにある org/aspectj/weaver/XlintDefault?.propertiesの中身と 同じ名前、値を持つプロパティを上書きする場合に利用する。-helpヘルプとUsageを出力する。-versionAspectJコンパイラのバージョンを出力する。-classpath Pathユーザ指定のクラスファイルの検索パスを指定する。Pathはシステム依存の パスデリミタで区切られたZipファイルパス名かディレクトリパス名の単一引数である。-bootclasspath Pathコンパイル時に型を評価(evaluating types)するためにJavaVMのbootclasspathを上書きする。 Pathはシステム依存のパスデリミタで区切られたZipファイルパス名か ディレクトリパス名の単一引数である。-extdirs Pathコンパイル時に型を評価(evaluating types)するためにJavaVMのインストール済み 拡張機能の位置を上書きする。 Pathはシステム依存のパスデリミタで区切られたZipファイルパス名か ディレクトリパス名の単一引数である。-d Directory生成したクラスファイルの置き場所を指定する。指定がない場合のデフォルトは CWDである。-target [1.1 to 1.4]クラスファイルのターゲットとするVMのバージョンである。-1.31.3準拠のクラスファイルを出力する。-1.41.4準拠のクラスファイルを出力する。 -targetオプションの説明に1.2がデフォと書いてある割に、こっちにもデフォと書いてある。Documentataion bug?-source [1.3|1.4]javacの -sourceオプションに準じた動作を行う。-nowarn
-warn:items警告対象を指定する。指定可能なオプションは以下の通り。カンマで区切って複数指定できる。
-deprecation
-noImportError未解決なimportに関するエラーを出力しない-proceedOnErrorエラーがあってもエラーを含んだままクラスファイルを出力する-g:[lines,vars,source]javacの-gオプションの動作に準ずる-preserveAllLocalsコード生成の間、全てのローカル変数を保持する-referenceInfo参照情報を計算する-encoding formatソースコードのフォーマットを指定する。-verboseビルドの手続きの際のログをちょっと出す(javac/javaのverboseとは全然違う)-log logfileコンパイル時の出力メッセージをlogfileに保存する-progress状況を表示する。(-log mode必須)-timeかかった時間を出力する(らしいが・・・)-noExitビルド完了後にExitしない-repeat Nパフォーマンス計測用オプション。N回ビルドを繰り返す |