Apache Ant 监听器和记录器17 Mar 2025 | 阅读 2 分钟 这是一个允许我们监控 Ant 在执行期间进度的功能。 Ant 使用两个概念进行监控:监听器和记录器,它们都由 Ant 本身提供。 请参阅下面所有支持的监听器。 监听器- 构建开始
- 构建完成
- 目标开始
- 目标完成
- 任务开始
- 任务完成
- 消息已记录
日志记录器 (Loggers)记录器用于扩展监听器的功能。 它具有各种功能,请参见下文。 - 它使用 -logfile 参数将信息记录到控制台或指定的文件中。
- 它知道日志级别(-quite、-verbose、-debug)。
- Emacs 模式感知
Apache Ant 监听器和记录器接口也可以用 UML 表示。 请参见下面的 UML 图。

这是一个 BuildListener 和 BuildLogger 接口的 UML 图。 内置监听器和记录器数据类型 | 参数 | 描述 |
---|
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 时使用监听器,方法是指定监听器类。 默认记录器可以使用以下命令运行 DefaultLogger,请参见我们在此处传递了 DefaultLogger 类。 邮件记录器MailLogger 使用 DefaultLogger 捕获所有输出日志,并通过唯一的电子邮件列表发送成功和失败消息。 MailLogger 类属性属性 | 描述 | 必需 |
---|
MailLogger.mailhost | 要使用的邮件服务器 | 否; 默认 localhost | MailLogger.port | 邮件服务器的 SMTP 端口 | 否; 默认 25 | MailLogger.user | SMTP 身份验证的用户名 | 是,如果您的 SMTP 服务器需要 SMTP 身份验证 | MailLogger.password | SMTP 身份验证的密码 | 是,如果您的 SMTP 服务器需要 SMTP 身份验证 | MailLogger.ssl | 如果需要 SSL,则为 on 或 true。 此功能需要 JavaMail | 不能 | MailLogger.from | 邮件的发件人地址 | 是,如果需要发送邮件 | MailLogger.replyto | 邮件的回复地址,以逗号分隔 | 不能 | MailLogger.success.to | 将成功消息发送到的地址,以逗号分隔 | 是,如果要发送成功邮件 | MailLogger.success.cc | 将成功消息发送到的抄送地址,以逗号分隔 | 不能 | MailLogger.success.bcc | 将成功消息发送到的密送地址,以逗号分隔 | 不能 |
命令行中的 MailLogger 例如。
|