Echoes a message to the current loggers and listeners which means System.out unless overridden. A levelcan be specified, which controls at what logging level the message is filtered at.

The task can also echo to a file, in which case the option to append rather than overwrite the file is available, and the level option is ignored


Attribute Description Required
message the message to echo. Yes, unless data is included in a character section within this element.
file the file to write the message to. No
append Append to an existing file? No - default is false.
level Control the level at which this message is reported. One of "error", "warning", "info", "verbose", "debug" No - default is "warning".


<echo message="Hello, world"/>

<echo message="Embed a line break:${line.separator}"/>

<echo>Embed another:${line.separator}</echo>

<echo>This is a longer message stretching over
two lines.

This is a longer message stretching over
three lines; the first line is a blank


As XML parsers are wont to do, the first newline in the text element has been included in the text.

<echo message="Deleting drive C:" level="debug"/>

A message which only appears in -debugmode.

<echo level="error">
Imminent failure in the antimatter containment facility. Please withdraw to safe location at least 50km away
. </echo>

A message which appears even in -quietmode.

<echo file="runner.csh" append="false">#\!/bin/tcsh
java-1.3.1 -mx1024m ${project.entrypoint} $$*

Generate a shell script by echoing to a file. Note the use of a double $ symbol to stop Ant filtering out the single $ during variable expansion

Source: Apache Ant