Ant にはビルドプロセスをモニターできるようにするために、 リスナーとロガーという 2 つの関連する機能があります。
リスナーは次のイベントを警告します:
ロガーはリスナーの能力を拡張し、次の機能を加えます:
| クラス名 | 説明 | 種類 |
org.apache.tools.ant.DefaultLogger |
-logger コマンドラインオプションにより上書きされない限り暗黙的に使われるロガー
|
BuildLogger |
org.apache.tools.ant.NoBannerLogger |
このロガーはターゲット出力が無い場合に、出力を省略します。 | BuildLogger |
org.apache.tools.ant.listener.MailLogger |
出力は同じように生成され、ビルドが終った時にEメールを送れるような DefaultLogger を拡張したもの | BuildLogger |
org.apache.tools.ant.listener.AnsiColorLogger |
ビルド出力をカラーにする | BuildLogger |
org.apache.tools.ant.listener.Log4jListener |
ログ生成を高度にカスタマイズするために Log4J にイベントを渡します | BuildListener |
org.apache.tools.ant.XmlLogger |
ビルド情報を XML ファイルの書き出す | BuildLogger |
単純に Ant を通常通り実行するか、あるいは:
ant -logger org.apache.tools.ant.DefaultLogger
ターゲット出力が無い場合に、出力を省略します
ant -logger org.apache.tools.ant.NoBannerLogger
MailLogger は DefaultLogger により全てのログ出力(Ant の標準出力)をキャプチャーし、結果の反対のメッセージをオフにしながら、 Eメールのリストに対し、成功あるいは失敗のメッセージを送ります。
MailLogger を実行制御するプロパティ:
| プロパティ | 説明 | 必須 |
|---|---|---|
| MailLogger.mailhost | 使用するメールサーバ | No、デフォルトは "localhost" |
| MailLogger.port | メールサーバ用の SMTP ポート | No, デフォルトは "25" |
| MailLogger.user | SMTP auth のユーザー名 | Yes, SMTPサーバで、SMTP auth が必要であれば、 メールのメッセージは、認証の後、Mime を使って送信されます。JavaMailが必要。 |
| MailLogger.password | SMTP auth のパスワード | Yes, SMTPサーバで、SMTP auth が必要であれば、 メールのメッセージは、認証の後、Mime を使って送信されます。JavaMailが必要。 |
| MailLogger.ssl | ssl が必要な場合、on か true この機能には JavaMail が必要です。 |
no |
| MailLogger.from | メールの "From" アドレス | メールを送る場合 Yes |
| MailLogger.replyto | メールの "replyto" アドレス。複数をカンマ区切りで指定 | No |
| MailLogger.failure.notify | ビルド失敗のメールを送るか | No、デフォルトは "true" |
| MailLogger.success.notify | ビルド成功のメールを送るか | No、デフォルトは "true" |
| MailLogger.failure.to | カンマ区切りの失敗メッセージ送信先アドレス | 失敗メールを送る場合 Yes |
| MailLogger.success.to | カンマ区切りの成功メッセージ送信先アドレス | 成功メッセージを送る場合 Yes |
| MailLogger.failure.subject | ビルド失敗の時の件名 | No、デフォルトは "Build Failure" |
| MailLogger.success.subject | ビルド成功の時の件名 | No、デフォルトは "Build Success" |
| MailLogger.properties.file | 他の値を上書きするプロパティファイル名 | No |
ant -logger org.apache.tools.ant.listener.MailLogger
AnsiColorLogger は、Ant の標準の出力に、 その前後に ANSI カラーコードエスケープシーケンスを置くことにより、 色付きで出力します。 これは単に、DefaultLoggerの拡張なので、 DefaultLogger が提供する全ての機能が提供されます。
AnsiColorLogger は、 メッセージの種類に依存して異なる色を割り当てることにより、 出力を区別します。
-logfile オプションと共に用いられた場合、 catやmoreなどのアプリケーションを使ってコンソールで表示する際に、 テキストが色付きで表示されるように、 出力ファイルには必要なエスケープコードが全て含まれています。
これは ANSI カラーコードをサポートする端末で動作するように設計されました。 XTerm、ETerm、(ANSI.SYSをロードした)Win9xコンソールなどで動作します。
注意: ANSI.SYSをロードしたCOMMAND.COMコンソールを使っても、 WinNT では、これは動作しません。
ユーザがデフォルトのカラーをカスタマイズしたものに上書きしたいと思った場合には、 カスタムカラーのキーと値のペアを、 ゼロ個以上含むファイルが作られなければなりません。 認識されるキーおよび、そのデフォルト値は下の通りです:
AnsiColorLogger.ERROR_COLOR=2;31
AnsiColorLogger.WARNING_COLOR=2;35
AnsiColorLogger.INFO_COLOR=2;36
AnsiColorLogger.VERBOSE_COLOR=2;32
AnsiColorLogger.DEBUG_COLOR=2;34
個々のキーは、 属性;フォアグランド色;バックグラウンド色で定義される色の組み合わせを値として取ります。 上の例においては、バックグラウンドの値は使われていません。
このファイルは ant.logger.defaults という名前のシステム変数の値として 指定し、Ant アプリケーションを起動する javaコマンドの -D オプションを使って引数として渡さなければなりません。 これを行う簡単な方法は、 ANT_OPTS 環境変数に -Dant.logger.defaults=/path/to/your/fileを加えることです。 Ant起動スクリプトはこのフラグを認識し、 java コマンドに適切に渡します。
フォーマット:
AnsiColorLogger.*=Attribute;Foreground;Background 属性は以下のいずれか: 0 -> 全属性をリセット (標準モードに戻る) 1 -> Bright (通常太字になる) 2 -> Dim 3 -> Underline 5 -> link 7 -> Reverse 8 -> Hidden フォアグラウンド色は次のうちの一つ: 30 -> Black 31 -> Red 32 -> Green 33 -> Yellow 34 -> Blue 35 -> Magenta 36 -> Cyan 37 -> White バックグラウンド色は次のうちの一つ: 40 -> Black 41 -> Red 42 -> Green 43 -> Yellow 44 -> Blue 45 -> Magenta 46 -> Cyan 47 -> White
ant -logger org.apache.tools.ant.listener.AnsiColorLogger
カテゴリとして、個々のビルドイベントの元となるフルクラス名を用いて、 ビルドイベントを Log4J に渡します:
全ての開始イベントはINFOとして、ログ記録されます。 終了イベントは、 ステージ中でビルドが失敗したかどうかにより、 INFO あるいは ERROR のいずれかでログ記録されます。 メッセージイベントは、 Ant のログレベルに従って、 関連する Log4J のレベルに直接マップしながら、 ログ記録されます。
ant -listener org.apache.tools.ant.listener.Log4jListener
リスナーとして使用されたときは、
log.xml という名前の XML ファイル、あるいは、
XmlLogger.fileプロパティがあればその値の XML ファイルに全てのビルド情報を書き出します。
ロガーとして使用されたときは、
全ての出力をコンソールか-logfileの値のファイルのいずれかに出力します。
リスナーとして使っても、ロガーとして使っても、
タスク、ターゲット、およびプロジェクトのためのタイミング情報を提供するために、
情報をバッファリングしているので、
出力はビルドが完了するまで生成されません。
デフォルトでは、
XML ファイルは "log.xsl" XSLT ファイルへの参照をカレントディレクトリに作成します;
これらのうちの一つが ANT_HOME/etc にあります。
スタイルシートの URL を指定するために、
プロパティ ant.XmlLogger.stylesheet.uri を設定できます。
これは、ファイルパスは相対パスでも絶対パスでも、
また、HTTP の URL でも構いません。
このプロパティに空の文字列を指定した場合、
XSLT による変換は全く定義されません。
ant -listener org.apache.tools.ant.XmlLogger
ant -logger org.apache.tools.ant.XmlLogger -verbose -logfile build_log.xml
開発者向けの ビルドイベント の節をご覧ください。
注意:
Copyright © 2000-2004 The Apache Software Foundation. All rights Reserved.