JarLibManifestTask (Apache Ant API)
Description: declaration: package: org.apache.tools.ant.taskdefs.optional.extension, class: JarLibManifestTask

# Class JarLibManifestTask

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

All Implemented Interfaces:
  `Cloneable`

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 https://docs.oracle.com/javase/8/docs/technotes/guides/extensions/versioning.html.

- ## Field Summary

  ### Fields inherited from class Task

  `target, taskName, taskType, wrapper`
  Modifier and Type
  Field
  Description
  `protected Target`
  `target`
  Deprecated.
  since 1.6.x.
  `protected String`
  `taskName`
  Deprecated.
  since 1.6.x.
  `protected String`
  `taskType`
  Deprecated.
  since 1.6.x.
  `protected RuntimeConfigurable`
  `wrapper`
  Deprecated.
  since 1.6.x.

  ### Fields inherited from class ProjectComponent

  `description, location, project`
  Modifier and Type
  Field
  Description
  `protected String`
  `description`
  Deprecated.
  since 1.6.x.
  `protected Location`
  `location`
  Deprecated.
  since 1.6.x.
  `protected Project`
  `project`
  Deprecated.
  since 1.6.x.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `JarLibManifestTask()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `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()`
  Execute the task.
  `void`
  `setDestfile(File destFile)`
  The location where generated manifest is placed.

  ### Methods inherited from class Task

  `bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`
  Modifier and Type
  Method
  Description
  `final void`
  `bindToOwner(Task owner)`
  Bind a task to another; use this when configuring a newly created task to do work on behalf of another.
  `Target`
  `getOwningTarget()`
  Returns the container target of this task.
  `RuntimeConfigurable`
  `getRuntimeConfigurableWrapper()`
  Returns the wrapper used for runtime configuration.
  `String`
  `getTaskName()`
  Returns the name to use in logging messages.
  `String`
  `getTaskType()`
  Return the type of task.
  `protected RuntimeConfigurable`
  `getWrapper()`
  Return the runtime configurable structure for this task.
  `protected void`
  `handleErrorFlush(String output)`
  Handles an error line by logging it with the WARN priority.
  `protected void`
  `handleErrorOutput(String output)`
  Handles an error output by logging it with the WARN priority.
  `protected void`
  `handleFlush(String output)`
  Handles output by logging it with the INFO priority.
  `protected int`
  `handleInput(byte[] buffer, int offset, int length)`
  Handle an input request by this task.
  `protected void`
  `handleOutput(String output)`
  Handles output by logging it with the INFO priority.
  `void`
  `init()`
  Called by the project to let the task initialize properly.
  `protected final boolean`
  `isInvalid()`
  Has this task been marked invalid?
  `void`
  `log(String msg)`
  Logs a message with the default (INFO) priority.
  `void`
  `log(String msg, int msgLevel)`
  Logs a message with the given priority.
  `void`
  `log(String msg, Throwable t, int msgLevel)`
  Logs a message with the given priority.
  `void`
  `log(Throwable t, int msgLevel)`
  Logs a message with the given priority.
  `void`
  `maybeConfigure()`
  Configures this task - if it hasn't been done already.
  `final void`
  `perform()`
  Performs this task if it's still valid, or gets a replacement version and performs that otherwise.
  `void`
  `reconfigure()`
  Force the task to be reconfigured from its RuntimeConfigurable.
  `void`
  `setOwningTarget(Target target)`
  Sets the target container of this task.
  `void`
  `setRuntimeConfigurableWrapper(RuntimeConfigurable wrapper)`
  Sets the wrapper to be used for runtime configuration.
  `void`
  `setTaskName(String name)`
  Sets the name to use in logging messages.
  `void`
  `setTaskType(String type)`
  Sets the name with which the task has been invoked.

  ### Methods inherited from class ProjectComponent

  `clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject`
  Modifier and Type
  Method
  Description
  `Object`
  `clone()`
  `String`
  `getDescription()`
  Returns the description of the current action.
  `Location`
  `getLocation()`
  Returns the file/location where this task was defined.
  `Project`
  `getProject()`
  Returns the project to which this component belongs.
  `void`
  `setDescription(String desc)`
  Sets a description of the current action.
  `void`
  `setLocation(Location location)`
  Sets the file/location where this task was defined.
  `void`
  `setProject(Project project)`
  Sets the project object of this component.

  ### Methods inherited from class Object

  `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### JarLibManifestTask

    public JarLibManifestTask()

- ## Method Details

  - ### setDestfile

    public void setDestfile(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.
    Throws:
      `BuildException` - if there is multiple extensions detected in the library.

  - ### 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
    Execute the task.
    Overrides:
      `execute` in class `Task`
    Throws:
      `BuildException` - if the task fails.