Apache Ant监听器和记录器

Apache Ant监听器和记录器

这是一个允许我们在执行期间监视Ant进度的进度的功能。 Ant使用两个概念进行监视:侦听器和记录器,两者都由Ant本身提供。 请参阅下面的所有支持的侦听器。

1. 监听器

  • 构建开始
  • 构建完成后
  • 目标开始后
  • 目标完成后
  • 任务开始后
  • 任务完成后
  • 消息记录

2. 记录器

记录器用于扩展侦听器功能。它具有各种功能,如下文中所示。

  • 它将信息记录到控制台或使用-logfile参数指定的文件。
  • 它是日志记录级别(-quite-verbose-debug)。
  • Emacs模式识别

Apache Ant ListenersLoggers接口也可以用UML表示。 请参阅下面的UML图。

它是BuildListenerBuildLogger接口的UML图。

3. 内置监听器和记录器

数据类型 参数 描述
org.apache.tools.ant.DefaultLogger 它是默认记录器,可以使用-logger命令行开关覆盖。 BuildLogger
org.apache.tools.ant.NoBannerLogger 它用于省略空目标输出的输出。 BuildLogger
org.apache.tools.ant.listener.MailLogger 它扩展了DefaultLogger并生成相同的输出并发送电子邮件。 BuildLogger
org.apache.tools.ant.listener.AnsiColorLogger 它用于为构建输出提供颜色。 BuildLogger
org.apache.tools.ant.listener.Log4jListener 它用于将事件传递给Apache Log4j日志记录。 BuildListener
org.apache.tools.ant.XmlLogger 它将构建信息写入XML文件。 BuildLogger
org.apache.tools.ant.TimestampedLogger 它用于打印构建完成的时间。 BuildLogger
org.apache.tools.ant.listener.BigProjectLogger 它用于打印每个目标的项目名称。 BuildLogger
org.apache.tools.ant.listener.SimpleBigProjectLogger 它仅打印子项目的项目名称。 BuildLogger
org.apache.tools.ant.listener.ProfileLogger 它是一个默认记录器,为每个任务和目标添加了开始时间,结束时间和持续时间。 BuildLogger

可以将任意数量的构建侦听器附加到项目。可以通过指定监听器类从命令行运行ant时使用监听器。

4. 默认记录器

可以使用以下命令运行DefaultLogger,请参阅下面命令传递了DefaultLogger类。

$ ant -logger org.apache.tools.ant.DefaultLogger

5. 邮件记录器

MailLogger使用DefaultLogger捕获所有输出日志,并通过唯一的电子邮件列表发送成功和失败消息。

MailLogger类属性

属性 描述 必需
MailLogger.mailhost 要使用的邮件服务器 否,默认是:localhost
MailLogger.port 邮件服务器的SMTP端口 否,默认是:25
MailLogger.user SMTP身份验证的用户名 是,如果SMTP服务器上需要SMTP身份验证
MailLogger.password SMTP身份验证的密码 是,如果SMTP服务器上需要SMTP身份验证
MailLogger.ssl 如果需要SSL,则为ontrue,此功能需要JavaMail
MailLogger.from 来自地址的邮件 是,如果需要发送邮件
MailLogger.replyto 邮件回复地址,以逗号分隔
MailLogger.success.to 地址(es)发送成功消息,以逗号分隔 是,如果要发送成功邮件
MailLogger.success.cc 地址(es)将成功消息发送到抄送(cc),逗号分隔
MailLogger.success.bcc 地址(es)将成功消息发送到密件抄送(bcc),逗号分隔

命令行中的MailLogger示例:

ant -logger org.apache.tools.ant.listener.MailLogger