## org.apache.tools.ant.loader
Class AntClassLoader2

    java.lang.Object
      |
      +--java.lang.ClassLoader
            |
            +--org.apache.tools.ant.AntClassLoader
                  |
                  +--org.apache.tools.ant.loader.AntClassLoader2

All Implemented Interfaces:
  BuildListener, java.util.EventListener

public class AntClassLoader2
extends AntClassLoader

An implementation of the AntClassLoader suitable for use on post JDK 1.1 platforms

Author:
  Conor MacNeill

Constructor Summary
`AntClassLoader2()` Constructor

Method Summary
`protected void` `addPathFile(java.io.File pathComponent)` Add a file to the path.
`protected java.lang.Class` `defineClassFromData(java.io.File container, byte[] classData, java.lang.String className)` Define a class given its bytes
`protected void` `definePackage(java.io.File container, java.lang.String className)` Define the package information associated with a class.
`protected void` `definePackage(java.io.File container, java.lang.String packageName, java.util.jar.Manifest manifest)` Define the package information when the class comes from a jar with a manifest

Methods inherited from class org.apache.tools.ant.AntClassLoader

`addJavaLibraries, addLoaderPackageRoot, addPathElement, addSystemPackageRoot, buildFinished, buildStarted, cleanup, findClass, findResources, forceLoadClass, forceLoadSystemClass, getClasspath, getResource, getResourceAsStream, getResourceURL, initializeClass, isInPath, loadClass, log, messageLogged, resetThreadContextLoader, setClassPath, setIsolated, setParent, setParentFirst, setProject, setThreadContextLoader, targetFinished, targetStarted, taskFinished, taskStarted`

Methods inherited from class java.lang.ClassLoader
`clearAssertionStatus, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findResource, findSystemClass, getPackage, getPackages, getParent, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners`

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

Constructor Detail

### AntClassLoader2

    public AntClassLoader2()

  Constructor

Method Detail

### defineClassFromData

    protected java.lang.Class defineClassFromData(java.io.File container,
                                                  byte[] classData,
                                                  java.lang.String className)
                                           throws java.io.IOException

  Define a class given its bytes

  Overrides:
    `defineClassFromData` in class `AntClassLoader`
  Parameters:
    `container` - the container from which the class data has been read may be a directory or a jar/zip file.
    `classData` - the bytecode data for the class
    `className` - the name of the class
  Returns:
    the Class instance created from the given data
  Throws:
    `java.io.IOException` - if the class data cannot be read.

### definePackage

    protected void definePackage(java.io.File container,
                                 java.lang.String className)
                          throws java.io.IOException

  Define the package information associated with a class.

  Parameters:
    `container` - the file containing the class definition.
    `className` - the class name of for which the package information is to be determined.
  Throws:
    `java.io.IOException` - if the package information cannot be read from the container.

### definePackage

    protected void definePackage(java.io.File container,
                                 java.lang.String packageName,
                                 java.util.jar.Manifest manifest)

  Define the package information when the class comes from a jar with a manifest

  Parameters:
    `container` - the jar file containing the manifest
    `packageName` - the name of the package being defined.
    `manifest` - the jar's manifest

### addPathFile

    protected void addPathFile(java.io.File pathComponent)
                        throws java.io.IOException

  Add a file to the path. This classloader reads the manifest, if available, and adds any additional class path jars specified in the manifest.

  Overrides:
    `addPathFile` in class `AntClassLoader`
  Parameters:
    `pathComponent` - the file which is to be added to the path for this class loader
  Throws:
    `java.io.IOException` - if data needed from the file cannot be read.

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