org.apache.tools.ant.taskdefs
Class Jar

java.lang.Object
  |
  +--org.apache.tools.ant.ProjectComponent
        |
        +--org.apache.tools.ant.Task
              |
              +--org.apache.tools.ant.taskdefs.MatchingTask
                    |
                    +--org.apache.tools.ant.taskdefs.Zip
                          |
                          +--org.apache.tools.ant.taskdefs.Jar
All Implemented Interfaces:
SelectorContainer
Direct Known Subclasses:
Ear, War

public class Jar
extends Zip

Creates a JAR archive.

Since:
Ant 1.1
Author:
James Davidson duncan@x180.com
, Brian Deitte bdeitte@macromedia.com

Nested Class Summary
static class Jar.FilesetManifestConfig
           
 
Nested classes inherited from class org.apache.tools.ant.taskdefs.Zip
Zip.Duplicate, Zip.WhenEmpty
 
Field Summary
 
Fields inherited from class org.apache.tools.ant.taskdefs.Zip
addedDirs, archiveType, duplicate, emptyBehavior, entries, zipFile
 
Fields inherited from class org.apache.tools.ant.taskdefs.MatchingTask
fileset, useDefaultExcludes
 
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
Jar()
          constructor
 
Method Summary
 void addConfiguredManifest(Manifest newManifest)
          Allows the manifest for the archive file to be provided inline in the build file rather than in an external file.
 void addMetainf(ZipFileSet fs)
          Adds a zipfileset to include in the META-INF directory.
protected  void cleanUp()
          Make sure we don't think we already have a MANIFEST next time this task gets executed.
protected  boolean createEmptyZip(java.io.File zipFile)
          Create an empty zip file
protected  void finalizeZipOutputStream(ZipOutputStream zOut)
          method for subclasses to override
protected  void initZipOutputStream(ZipOutputStream zOut)
          method for subclasses to override
protected  boolean isUpToDate(FileScanner[] scanners, java.io.File zipFile)
          Check whether the archive is up-to-date;
 void reset()
          reset to default values.
 void setIndex(boolean flag)
          Set whether or not to create an index list for classes.
 void setJarfile(java.io.File jarFile)
          Deprecated. Use setDestFile(File) instead
 void setManifest(java.io.File manifestFile)
          The manifest file to use.
 void setWhenempty(Zip.WhenEmpty we)
          Sets behavior of the task when no files match.
protected  void zipFile(java.io.File file, ZipOutputStream zOut, java.lang.String vPath)
          Overriden from Zip class to deal with manifests
protected  void zipFile(java.io.InputStream is, ZipOutputStream zOut, java.lang.String vPath, long lastModified, java.io.File file)
          Overriden from Zip class to deal with manifests
 
Methods inherited from class org.apache.tools.ant.taskdefs.Zip
addFiles, addFiles, addFileset, addParentDirs, addZipEntries, addZipfileset, addZipGroupFileset, execute, grabFileNames, grabFiles, grabFiles, isAddingNewFiles, isInUpdateMode, setBasedir, setCompress, setDestFile, setDuplicate, setEncoding, setFile, setFilesonly, setUpdate, setZipfile, zipDir
 
Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask
addAnd, addContains, addCustom, addDate, addDepend, addDepth, addFilename, addMajority, addNone, addNot, addOr, addPresent, addSelector, addSize, appendSelector, createExclude, createExcludesFile, createInclude, createIncludesFile, createPatternSet, getDirectoryScanner, getSelectors, hasSelectors, selectorCount, selectorElements, setCaseSensitive, setDefaultexcludes, setExcludes, setExcludesfile, setFollowSymlinks, setIncludes, setIncludesfile, setProject, XsetIgnore, XsetItems
 
Methods inherited from class org.apache.tools.ant.Task
getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, handleErrorOutput, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Jar

public Jar()
constructor

Method Detail

setWhenempty

public void setWhenempty(Zip.WhenEmpty we)
Description copied from class: Zip
Sets behavior of the task when no files match. Possible values are: fail (throw an exception and halt the build); skip (do not create any archive, but issue a warning); create (make an archive with no entries). Default for zip tasks is skip; for jar tasks, create.

Overrides:
setWhenempty in class Zip

setJarfile

public void setJarfile(java.io.File jarFile)
Deprecated. Use setDestFile(File) instead


setIndex

public void setIndex(boolean flag)
Set whether or not to create an index list for classes. This may speed up classloading in some cases.


addConfiguredManifest

public void addConfiguredManifest(Manifest newManifest)
                           throws ManifestException
Allows the manifest for the archive file to be provided inline in the build file rather than in an external file.

Parameters:
newManifest -
Throws:
ManifestException

setManifest

public void setManifest(java.io.File manifestFile)
The manifest file to use. This can be either the location of a manifest, or the name of a jar added through a fileset. If its the name of an added jar, the task expects the manifest to be in the jar at META-INF/MANIFEST.MF.

Parameters:
manifestFile -

addMetainf

public void addMetainf(ZipFileSet fs)
Adds a zipfileset to include in the META-INF directory.

Parameters:
fs - zipfileset to add

initZipOutputStream

protected void initZipOutputStream(ZipOutputStream zOut)
                            throws java.io.IOException,
                                   BuildException
Description copied from class: Zip
method for subclasses to override

Overrides:
initZipOutputStream in class Zip
java.io.IOException
BuildException

finalizeZipOutputStream

protected void finalizeZipOutputStream(ZipOutputStream zOut)
                                throws java.io.IOException,
                                       BuildException
Description copied from class: Zip
method for subclasses to override

Overrides:
finalizeZipOutputStream in class Zip
java.io.IOException
BuildException

zipFile

protected void zipFile(java.io.File file,
                       ZipOutputStream zOut,
                       java.lang.String vPath)
                throws java.io.IOException
Overriden from Zip class to deal with manifests

Overrides:
zipFile in class Zip
java.io.IOException

zipFile

protected void zipFile(java.io.InputStream is,
                       ZipOutputStream zOut,
                       java.lang.String vPath,
                       long lastModified,
                       java.io.File file)
                throws java.io.IOException
Overriden from Zip class to deal with manifests

Overrides:
zipFile in class Zip
java.io.IOException

isUpToDate

protected boolean isUpToDate(FileScanner[] scanners,
                             java.io.File zipFile)
                      throws BuildException
Check whether the archive is up-to-date;

Overrides:
isUpToDate in class Zip
Parameters:
scanners - list of prepared scanners containing files to archive
zipFile - intended archive file (may or may not exist)
Returns:
true if nothing need be done (may have done something already); false if archive creation should proceed
Throws:
BuildException - if it likes

createEmptyZip

protected boolean createEmptyZip(java.io.File zipFile)
Description copied from class: Zip
Create an empty zip file

Overrides:
createEmptyZip in class Zip
Returns:
true if the file is then considered up to date.

cleanUp

protected void cleanUp()
Make sure we don't think we already have a MANIFEST next time this task gets executed.

Overrides:
cleanUp in class Zip
See Also:
Zip.cleanUp()

reset

public void reset()
reset to default values.

Overrides:
reset in class Zip
Since:
1.44, Ant 1.5
See Also:
Zip.reset()


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