Echo

說明

將訊息傳送至目前的記錄器和監聽器,表示為 System.out,除非另有覆寫。可以指定 level,用於控制訊息過濾的記錄層級。

任務也可以傳送至檔案,這種情況下可以選擇附加而非覆寫檔案,且會忽略 level 選項

參數

屬性 說明 必要
訊息 要傳送的訊息。 否;預設為空白列,除非在這個元素中的字元區段中包含文字
檔案 要將訊息寫入的檔案。 否;只能使用其中一個
輸出 要將訊息寫入的 資源(請參閱 註解)。自 Apache Ant 1.8 起
附加 附加至現有檔案(或 開啟新檔案 / 覆寫現有檔案)? 否;除非 output 指示檔案系統目的地,否則會忽略,預設為 false
層級 控制報告此訊息的層級。其中之一為 errorwarninginfoverbosedebug(遞減順序) 否;預設為 warning
編碼 要使用的編碼。自 Ant 1.7 起 否;預設為預設 JVM 字元編碼
強制 覆寫唯讀目的地檔案。自 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