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

Package org.apache.tools.ant.taskdefs.optional.jlink

# Class jlink

java.lang.Object
org.apache.tools.ant.taskdefs.optional.jlink.jlink

public class jlink extends Object
jlink links together multiple .jar files.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `jlink()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addAddFile(String fileToAdd)`
  Adds a file to be added into the output.
  `void`
  `addAddFiles(String... filesToAdd)`
  Adds several files to be added into the output.
  `void`
  `addMergeFile(String fileToMerge)`
  Adds a file to be merged into the output.
  `void`
  `addMergeFiles(String... filesToMerge)`
  Adds several files to be merged into the output.
  `void`
  `link()`
  Performs the linking of files.
  `static void`
  `main(String[] args)`
  The command line entry point for jlink.
  `void`
  `setCompression(boolean compress)`
  Determines whether output will be compressed.
  `void`
  `setOutfile(String outfile)`
  The file that will be created by this instance of jlink.

  ### Methods inherited from class java.lang.Object

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

- ## Constructor Details

  - ### jlink

    public jlink()

- ## Method Details

  - ### setOutfile

    public void setOutfile(String outfile)
    The file that will be created by this instance of jlink.
    Parameters:
      `outfile` - the file to create.

  - ### addMergeFile

    public void addMergeFile(String fileToMerge)
    Adds a file to be merged into the output.
    Parameters:
      `fileToMerge` - the file to merge into the output.

  - ### addAddFile

    public void addAddFile(String fileToAdd)
    Adds a file to be added into the output.
    Parameters:
      `fileToAdd` - the file to add to the output.

  - ### addMergeFiles

    public void addMergeFiles(String... filesToMerge)
    Adds several files to be merged into the output.
    Parameters:
      `filesToMerge` - an array of files to merge into the output.

  - ### addAddFiles

    public void addAddFiles(String... filesToAdd)
    Adds several files to be added into the output.
    Parameters:
      `filesToAdd` - an array of files to add to the output.

  - ### setCompression

    public void setCompression(boolean compress)
    Determines whether output will be compressed.
    Parameters:
      `compress` - if true use compression.

  - ### link

    public void link() throws Exception
    Performs the linking of files. Addfiles are added to the output as-is. For example, a jar file is added to the output as a jar file. However, mergefiles are first examined for their type. If it is a jar or zip file, the contents will be extracted from the mergefile and entered into the output. If a zip or jar file is encountered in a subdirectory it will be added, not merged. If a directory is encountered, it becomes the root entry of all the files below it. Thus, you can provide multiple, disjoint directories, as addfiles: they will all be added in a rational manner to outfile.
    Throws:
      `Exception` - on error.

  - ### main

    public static void main(String[] args)
    The command line entry point for jlink.
    Parameters:
      `args` - an array of arguments