|
- <!DOCTYPE html>
- <!--
- 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
-
- https://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 lang="en">
-
- <head>
- <link rel="stylesheet" type="text/css" href="../stylesheets/style.css">
- <title>Bindtargets Task</title>
- </head>
-
- <body>
-
- <h2 id="ant">Bindtargets</h2>
- <p><em>Since Apache Ant 1.8.2</em></p>
- <h3>Description</h3>
-
- <p>Make some target the extension of some
- defined <a href="../targets.html#extension-points">extension point</a>. It will make the list of
- targets dependencies of the extension point.</p>
-
- <p>This target is useful when you want to have a target to participate in another build workflow
- which explicitly exposes an extension point for that kind of insertion. Thus the target to bind and
- the extension point to bind to are both declared in some imported build files. But directly
- modifying the target dependency graph of these external build files may have a side effect on some
- other project which imports them. This task helps to modify the target dependencies but only in your
- context.</p>
-
- <p><strong>Note</strong>: this task is quite equivalent to the definition of an intermediate target
- which will be the bridge between the target to bind and the extension point. For instance:</p>
- <pre><bindtargets targets="jar,javadoc" extensionPoint="dist"/></pre>
- <p>is quite equivalent to:</p>
- <pre><target name="bind-to-dist" depends="jar,javadoc" extensionOf="dist"/></pre>
- <p>This task basically avoids the creation of a target.</p>
-
- <p>The <code>bindtargets</code> task may only be used as a top-level task. This means that it may
- not be used in a target. This is making the target dependency graph static and predictable as soon
- as every build file is loaded.</p>
-
- <h3>Parameters</h3>
- <table class="attr">
- <tr>
- <th scope="col">Attribute</th>
- <th scope="col">Description</th>
- <th scope="col">Required</th>
- </tr>
- <tr>
- <td>targets</td>
- <td>a comma separated list of target names to bind.</td>
- <td>Yes</td>
- </tr>
- <tr>
- <td>extensionPoint</td>
- <td>the name of the extension point to bind the targets to.</td>
- <td>Yes</td>
- </tr>
- <tr>
- <td>onMissingExtensionPoint</td>
- <td>What to do if this target tries to extend a
- missing <a href="../targets.html#extension-points">extension-point</a>: <q>fail</q>, <q>warn</q>, <q>ignore</q>.</td>
- <td>No; defaults to <q>fail</q></td>
- </tr>
- </table>
-
- <h3>Examples</h3>
- <pre><bindtargets targets="build-jar,build-src-jar" extensionPoint="dist"/></pre>
-
- </body>
- </html>
|