Ant - 监听器和记录器
Ant 允许使用监听器和记录器来监控构建过程.
监听器
Ant 提供以下事件以使用侦听器捕获。
构建开始
构建完成
目标开始
目标完成
任务开始
任务完成
记录消息
可以使用 -listener 参数在命令行上注册自定义侦听器。
记录器
Loggers 扩展了侦听器功能并添加了以下功能
可以使用 -logfile 参数将信息记录到控制台或文件
可以使用 -quiet、-verbose、-debug 等日志级别进行日志记录
是否支持 emacs 模式
内置监听器/记录器
org.apache.tools.ant.DefaultLogger − 记录器隐式使用,除非用 -logger 命令行开关覆盖。
org.apache.tools.ant.NoBannerLogger − 此记录器忽略空目标输出的输出。
org.apache.tools.ant.listener.MailLogger − 扩展 DefaultLogger 以便仍然生成相同的输出,并且在构建完成时可以发送电子邮件。
org.apache.tools.ant.listener.AnsiColorLogger − 着色构建输出。
org.apache.tools.ant.listener.Log4jListener − 将事件传递给 Apache Log4j 以实现高度可定制的日志记录。
org.apache.tools.ant.XmlLogger − 将构建信息写入 XML 文件。
org.apache.tools.ant.TimestampedLogger − 打印构建完成的时间
org.apache.tools.ant.listener.BigProjectLogger − 打印每个目标的项目名称
org.apache.tools.ant.listener.SimpleBigProjectLogger − 仅打印子项目的项目名称,否则类似于 NoBannerLogger 自 Ant 1.8.1
org.apache.tools.ant.listener.ProfileLogger − 默认记录器,为每个任务和目标添加了开始时间、结束时间和持续时间。
示例
使用以下内容创建 build.xml:
<?xml version="1.0"?> <project name="sample" basedir="." default="copy"> <target name="copy"> <echo>File Copied</echo> </target> </project>
输出
在上述构建文件上运行 Ant 会产生以下输出 −
F:\tutorialspoint\ant>ant -logger org.apache.tools.ant.listener.TimestampedLogger Buildfile: F:\tutorialspoint\ant\build.xml copy: [echo] File Copied BUILD SUCCESSFUL - at 03/12/21, 11:24 AM Total time: 0 seconds F:\tutorialspoint\ant>ant -logger org.apache.tools.ant.XmlLogger -verbose -logfile build_log.xml Apache Ant(TM) version 1.10.12 compiled on October 13 2021 Trying the default build file: build.xml Buildfile: F:\tutorialspoint\ant\build.xml
现在您可以检查 build_log.xml 文件是否使用相关日志创建。