Ant內建任務之available
阿新 • • 發佈:2019-01-27
一、概述
available是Ant的內建任務。如果在執行期間一個資源可用,就會設定一個屬性,資源可能是檔案、目錄、classpath中的class或者JVM系統資源。如果資源存在,屬性值預設設為true,否則不會設定屬性。也可以通過設定value屬性將這個值設定為其他值。通常使用這個任務有助於避免target的執行依賴於系統引數。
二、屬性
property:要設定的屬性名稱,是必需的。
value:要設定的屬性值,預設為true。
classname:要在classpath中查詢的類。
file:要查詢的檔案。
resource:要在JVM中查詢的資源。
classpath:在查詢類或資源時使用的類路徑。
filepath:查詢檔案時使用的路徑。
classpathref:使用的類路徑,指向一個path的引用。
type:查詢的file型別,dir或者file,如果不設定,且file屬性中設定的名稱存在,此屬性會被設定為對應的型別。
ignoresystemclasses:或略ant的執行時類,只使用指定的類路徑。只對classname屬性生效,預設為false。
searchparents:從Ant1.7開始,如果為true,在查詢一個檔案時,不止會查詢指定的目錄,指定目錄的父目錄也會被查詢。如果設定為false,只查詢指定目錄,預設為false。
file、resource和classpath三者必須設定一個。
三、簡單示例
<project> <available classname="java.lang.Integer" property="class.present"/> <echo>${class.present}</echo> <available file="conf" type="dir" property="filepath" value="conf/conf.properties"/> <echo>${filepath}</echo> <available file="${filepath}" property="conf.properties.present"/> <echo>${conf.properties.present}</echo> </project>