将消息回显到当前的日志记录器和监听器,这意味着 System.out
,除非被覆盖。可以指定一个 level,它控制在哪个日志级别过滤消息。
该任务还可以回显到文件,在这种情况下,可以选择追加而不是覆盖文件,并且 level 选项将被忽略。
属性 | 描述 | 必需 |
---|---|---|
message | 要回显的消息。 | 否;默认为空行,除非此元素内的字符部分包含文本。 |
file | 要写入消息的文件。 | 否;只能使用其中一个。 |
output | 要写入消息的 资源(参见 注释)。自 Apache Ant 1.8 起 | |
append | 追加到现有文件(或 打开新文件/覆盖现有文件)? | 否;除非 output 指示文件系统目标,否则将被忽略,默认值为 false |
level | 控制报告此消息的级别。其中之一为 error、 warning、 info、 verbose、 debug(降序) |
否;默认值为 warning |
encoding | 要使用的编码。自 Ant 1.7 起 | 否;默认值为默认 JVM 字符编码。 |
force | 覆盖只读目标文件。自 Ant 1.8.2 起 | 否;默认值为 false |
基本用法
<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. </echo>
<echo>
标签后面的换行符是输出的一部分。元素内容内的字符数据中的换行符不会被 XML 解析器丢弃。
有关详细信息,请参见 W3C 建议 2008 年 11 月 26 日/行尾处理。
<echo> This is a longer message stretching over three lines; the first line is a blank </echo>
仅在 -debug 模式下显示的消息。
<echo message="Deleting drive C:" level="debug"/>
即使在 -quiet 模式下也会显示的消息。
<echo level="error"> Imminent failure in the antimatter containment facility. Please withdraw to safe location at least 50km away. </echo>
通过回显到文件生成 shell 脚本。请注意使用双 $
符号来阻止 Ant 在变量扩展期间过滤掉单个 $
。
<echo file="runner.csh" append="false">#\!/bin/tcsh java-1.3.1 -mx1024m ${project.entrypoint} $$* </echo>
根据 Ant 运行的日志级别,消息将被打印出来或静默忽略。
Ant 命令行 | -quiet、-q | 无开关 | -verbose、-v | -debug、-d |
---|---|---|---|---|
<echo message="This is error message." level="error"/> |
ok | ok | ok | ok |
<echo message="This is warning message."/> |
ok | ok | ok | ok |
<echo message="This is warning message." level="warning"/> |
ok | ok | ok | ok |
<echo message="This is info message." level="info"/> |
未记录 | ok | ok | ok |
<echo message="This is verbose message." level="verbose"/> |
未记录 | 未记录 | ok | ok |
<echo message="This is debug message." level="debug"/> |
未记录 | 未记录 | 未记录 | ok |