|
- <!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
- <html>
-
- <head>
- <meta http-equiv="Content-Language" content="en-us">
- <link rel="stylesheet" type="text/css" href="../stylesheets/style.css">
- <title>Available Task</title>
- </head>
-
- <body>
-
- <h2><a name="available">Available</a></h2>
- <h3>Description</h3>
- <p>Sets a property if a resource is available at runtime. This resource can be a
- file, a directory, a class in the classpath, or a JVM system resource.</p>
- <p>If the resource is present, the property value is set to true by
- default; otherwise, the property is not set. You can set the value to
- something other than the default by specifying the <code>value</code> attribute.</p>
- <p>Normally, this task is used to set properties that are useful to avoid target
- execution depending on system parameters.</p>
- <h3>Parameters</h3>
- <table border="1" cellpadding="2" cellspacing="0">
- <tr>
- <td valign="top"><b>Attribute</b></td>
- <td valign="top"><b>Description</b></td>
- <td align="center" valign="top"><b>Required</b></td>
- </tr>
- <tr>
- <td valign="top">property</td>
- <td valign="top">The name of the property to set.</td>
- <td valign="top" align="center">Yes</td>
- </tr>
- <tr>
- <td valign="top">value</td>
- <td valign="top">The value to set the property to. Defaults to "true".</td>
- <td valign="top" align="center">No</td>
- </tr>
- <tr>
- <td valign="top">classname</td>
- <td valign="top">The class to look for in the classpath.</td>
- <td valign="middle" align="center" rowspan="3">Yes</td>
- </tr>
- <tr>
- <td valign="top">file</td>
- <td valign="top">The file to look for.</td>
- </tr>
- <tr>
- <td valign="top">resource</td>
- <td valign="top">The resource to look for in the JVM.</td>
- </tr>
- <tr>
- <td valign="top">classpath</td>
- <td valign="top">The classpath to use when looking up <code>classname</code> or <code>resource</code>.</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">filepath</td>
- <td valign="top">The path to use when looking up <code>file</code>.</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">classpathref</td>
- <td valign="top">The classpath to use, given as a <a href="../using.html#references">reference</a> to a path defined elsewhere.</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">type</td>
- <td valign="top">The type of <code>file</code> to look for, either a directory (<code>type="dir"</code>) or a file
- (<code>type="file"</code>). If not set, the property will be set if the name specified in the <code>file</code>
- attribute exists as either a file or a directory.</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">ignoresystemclasses</td>
- <td valign="top">Ignore Ant's runtime classes, using only the specified
- classpath. Only affects the "classname" attribute. Defaults to "false"</td>
- <td align="center" valign="top">No</td>
- </tr>
- <tr>
- <td valign="top">searchparents</td>
- <td valign="top">This contains the behaviour of the "file" type.
- If true, the available task will, when
- searching for a file, search not only the directories specified but
- will also search the parent and grandparent directories of those
- specified.
- If false, only the directories specified will be searched.
- Defaults to "true".
- <em>Since Ant 1.7</em>
- </td>
- <td align="center" valign="top">No</td>
- </tr>
- </table>
- <h3>Parameters specified as nested elements</h3>
- <h4>classpath</h4>
- <p><code>Available</code>'s <code>classpath</code> attribute is a <a
- href="../using.html#path">path-like structure</a> and can also be set via a nested
- <code><classpath></code> element.</p>
- <h4>filepath</h4>
- <p><code>Available</code>'s <code>filepath</code> attribute is a <a
- href="../using.html#path">path-like structure</a> and can also be set via a nested
- <code><filepath></code> element.</p>
- <h3>Examples</h3>
- <blockquote><pre>
- <available classname="org.whatever.Myclass" property="Myclass.present"/>
- </pre></blockquote>
- <p>sets the <code>Myclass.present</code> property to the value "true"
- if the class <code>org.whatever.Myclass</code> is found in Ant's classpath.</p>
- <blockquote><pre>
- <property name="jaxp.jar" value="./lib/jaxp11/jaxp.jar"/>
- <available file="${jaxp.jar}" property="jaxp.jar.present"/>
- </pre></blockquote>
- <p>sets the <code>jaxp.jar.present</code> property to the value "true"
- if the file <code>./lib/jaxp11/jaxp.jar</code> is found.</p>
- <blockquote><pre>
- <available file="/usr/local/lib" type="dir"
- property="local.lib.present"/>
- </pre></blockquote>
- <p>sets the <code>local.lib.present</code> property to the value "true"
- if the directory <code>/usr/local/lib</code> is found.</p>
- <blockquote><pre>
- ...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"/>
- </pre></blockquote>
- <p>sets the <code>jaxp11.present</code> property to the value "true"
- if the class <code>javax.xml.transform.Transformer</code> is found in the classpath referenced by <code>jaxp</code> (in this case, <code>./lib/jaxp11/jaxp.jar</code>).
- </p>
- <blockquote><pre>
- <available property="have.extras" resource="extratasks.properties">
- <classpath>
- <pathelement location="/usr/local/ant/extra.jar" />
- </classpath>
- </available>
- </pre></blockquote>
- <p>sets the <code>have.extras</code> property to the value "true"
- if the resource-file <code>extratasks.properties</code> is found.
- </p>
- <hr><p align="center">Copyright © 2000-2002,2004-2006 The Apache Software Foundation. All rights
- Reserved.</p>
-
- </body>
- </html>
|