使用可能

説明

実行時にリソースが使用可能な場合にプロパティを設定します。このリソースは、ファイル、ディレクトリ、クラスパス内のクラス、または JVM システムリソースにすることができます。

: クラスがロードできる場合、クラスパスで使用可能になります。つまり、依存するすべてのクラスもクラスパスに存在する必要があります。

リソースが存在する場合、プロパティ値は既定で true に設定されます。そうでない場合、プロパティは設定されません。 value 属性を指定すると、値を既定値以外の値に設定できます。

通常、このタスクは、システムパラメータに応じてターゲットの実行を回避するために役立つプロパティを設定するために使用されます。

パラメータ

属性 説明 必須
property 設定するプロパティの名前。 はい
value プロパティに設定する値。 いいえ; 既定の true
classname クラスパス内で検索するクラス。 3 つのうち 1 つ
file 検索するファイル。
resource JVM 内で検索するリソース。
classpath classname または resource を検索するときに使用するクラスパス。 いいえ
filepath file を検索するときに使用するパス。 いいえ
classpathref 使用するクラスパス。他の場所に定義されたパスへの 参照 として指定します。 いいえ
type 検索する file のタイプ (ディレクトリ (type=dir) またはファイル (type=file) のいずれか)。設定されていない場合、プロパティは、 file 属性で指定された名前がファイルまたはディレクトリとして存在する場合に設定されます。 いいえ
ignoresystemclasses Ant のランタイムクラスを無視し、指定されたクラスパスのみを使用します。 classname 属性にのみ影響します。 いいえ; 既定の false
searchparents file type の動作を保持します。 true の場合、タスクはファイルを検索するときに、指定されたディレクトリだけでなく、それらの指定されたディレクトリの親ディレクトリも検索します。 false の場合、指定されたディレクトリのみが検索されます。Ant 1.7 以降 いいえ; 既定の false

ネストされた要素として指定されたパラメーター

classpath

Availableclasspath 属性は パスライク構造 であり、ネストされた <classpath> 要素経由でも設定できます。

filepath

Availablefilepath 属性は パスライク構造 であり、ネストされた <filepath> 要素経由でも設定できます。

クラス org.whatever.Myclass が Ant のクラスパスにある場合、 Myclass.present プロパティを値 true に設定します。

<available classname="org.whatever.Myclass" property="Myclass.present"/>

ファイル ./lib/jaxp11/jaxp.jar が見つかった場合、 jaxp.jar.present プロパティを値 true に設定します。

<property name="jaxp.jar" value="./lib/jaxp11/jaxp.jar"/>
<available file="${jaxp.jar}" property="jaxp.jar.present"/>

ディレクトリ /usr/local/lib が見つかった場合、 local.lib.present プロパティを値 true に設定します。

<available file="/usr/local/lib" type="dir"
           property="local.lib.present"/>

クラスパスにjavax.xml.transform.Transformerクラスがある場合、jaxp11.presentプロパティを値trueに設定します(この場合、./lib/jaxp11/jaxp.jar

...in project ...
<property name="jaxp.jar" value="./lib/jaxp11/jaxp.jar"/>
<path id="jaxp" location="${jaxp.jar}"/>
...in target ...
<available classname="javax.xml.transform.Transformer"
           classpathref="jaxp" property="jaxp11.present"/>

リソースファイルextratasks.propertiesがある場合、have.extrasプロパティを値trueに設定します

<available property="have.extras" resource="extratasks.properties">
  <classpath>
    <pathelement location="/usr/local/ant/extra.jar"/>
  </classpath>
</available>