## org.apache.tools.ant.taskdefs.optional.extension
Class JarLibManifestTask

    java.lang.Object
      |
      +--org.apache.tools.ant.ProjectComponent
            |
            +--org.apache.tools.ant.Task
                  |
                  +--org.apache.tools.ant.taskdefs.optional.extension.JarLibManifestTask

public final class JarLibManifestTask
extends Task

Generates a manifest that declares all the dependencies. The dependencies are determined by looking in the specified path and searching for Extension / "Optional Package" specifications in the manifests of the jars.

Prior to JDK1.3, an "Optional Package" was known as an Extension. The specification for this mechanism is available in the JDK1.3 documentation in the directory $JDK_HOME/docs/guide/extensions/versioning.html. Alternatively it is available online at http://java.sun.com/j2se/1.3/docs/guide/extensions/versioning.html.

Author:
  Peter Donald

Field Summary

Fields inherited from class org.apache.tools.ant.Task
`description, location, target, taskName, taskType, wrapper`

Fields inherited from class org.apache.tools.ant.ProjectComponent
`project`

Constructor Summary
`JarLibManifestTask()`

Method Summary
`void` `addConfiguredAttribute(ExtraAttribute attribute)` Adds an attribute that is to be put in main section of manifest.
`void` `addConfiguredDepends(ExtensionSet extensionSet)` Adds a set of extensions that this library requires.
`void` `addConfiguredExtension(ExtensionAdapter extensionAdapter)` Adds an extension that this library implements.
`void` `addConfiguredOptions(ExtensionSet extensionSet)` Adds a set of extensions that this library optionally requires.
`void` `execute()` Called by the project to let the task do its work.
`void` `setDestfile(java.io.File destfile)` The location where generated manifest is placed.

Methods inherited from class org.apache.tools.ant.Task
`getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, handleErrorFlush, handleErrorOutput, handleFlush, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName`

Methods inherited from class org.apache.tools.ant.ProjectComponent
`getProject, setProject`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### JarLibManifestTask

    public JarLibManifestTask()

Method Detail

### setDestfile

    public void setDestfile(java.io.File destfile)

  The location where generated manifest is placed.

  Parameters:
    `destfile` - The location where generated manifest is placed.

### addConfiguredExtension

    public void addConfiguredExtension(ExtensionAdapter extensionAdapter)
                                throws BuildException

  Adds an extension that this library implements.

  Parameters:
    `extensionAdapter` - an extension that this library implements.
    `BuildException`

### addConfiguredDepends

    public void addConfiguredDepends(ExtensionSet extensionSet)

  Adds a set of extensions that this library requires.

  Parameters:
    `extensionSet` - a set of extensions that this library requires.

### addConfiguredOptions

    public void addConfiguredOptions(ExtensionSet extensionSet)

  Adds a set of extensions that this library optionally requires.

  Parameters:
    `extensionSet` - a set of extensions that this library optionally requires.

### addConfiguredAttribute

    public void addConfiguredAttribute(ExtraAttribute attribute)

  Adds an attribute that is to be put in main section of manifest.

  Parameters:
    `attribute` - an attribute that is to be put in main section of manifest.

### execute

    public void execute()
                 throws BuildException

  Description copied from class: `Task`
  Called by the project to let the task do its work. This method may be called more than once, if the task is invoked more than once. For example, if target1 and target2 both depend on target3, then running "ant target1 target2" will run all tasks in target3 twice.

  Overrides:
    `execute` in class `Task`
  Throws:
    `BuildException` - if something goes wrong with the build

Copyright © 2000-2003 Apache Software Foundation. All Rights Reserved.