
- Apache ANT Tutorial
- ANT - Home
- ANT - Introduction
- ANT - Environment Setup
- ANT - Build Files
- ANT - Property Task
- ANT - Property Files
- ANT - Data Types
- ANT - Building Projects
- ANT - Build Documentation
- ANT - Creating JAR files
- ANT - Create WAR Files
- ANT - Packaging Applications
- ANT - Deploying Applications
- ANT - Executing Java code
- ANT - Eclipse Integration
- ANT - JUnit Integration
- ANT - Extending Ant
- Apache ANT Useful Examples
- ANT - Using Token
- ANT - Using Command Line Arguments
- ANT - Using If Else arguments
- ANT - Custom Components
- ANT - Listeners and Loggers
- Apache ANT Resources
- ANT - Quick Guide
- ANT - Useful Resources
- ANT - Discussion
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Ant - Listeners & Loggers
Ant allows the build process to be monitored using listeners and loggers.
Listeners
Ant provides following events to be captured using listeners.
build started
build finished
target started
target finished
task started
task finished
message logged
Custom listeners can be registered on command line using -listener argument.
Loggers
Loggers extends listeners capabilities and add the following features
Can log information to console or file using -logfile argument
Can log using logging levels like -quiet, -verbose, -debug
Are emacs-mode aware
Built-in Listeners/loggers
org.apache.tools.ant.DefaultLogger − The logger used implicitly unless overridden with the -logger command-line switch.
org.apache.tools.ant.NoBannerLogger − This logger omits output of empty target output.
org.apache.tools.ant.listener.MailLogger − Extends DefaultLogger such that output is still generated the same, and when the build is finished an e-mail can be sent.
org.apache.tools.ant.listener.AnsiColorLogger − Colorifies the build output.
org.apache.tools.ant.listener.Log4jListener − Passes events to Apache Log4j for highly customizable logging.
org.apache.tools.ant.XmlLogger − Writes the build information to an XML file.
org.apache.tools.ant.TimestampedLogger − Prints the time that a build finished
org.apache.tools.ant.listener.BigProjectLogger − Prints the project name every target
org.apache.tools.ant.listener.SimpleBigProjectLogger − Prints the project name for subprojects only, otherwise like NoBannerLogger Since Ant 1.8.1
org.apache.tools.ant.listener.ProfileLogger − The default logger, with start times, end times and durations added for each task and target.
Example
Create build.xml with the following content:
<?xml version="1.0"?> <project name="sample" basedir="." default="copy"> <target name="copy"> <echo>File Copied</echo> </target> </project>
Output
Running Ant on the above build file produces the following output −
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
Now you can check build_log.xml file is created with relevant logs.