org.apache.tools.ant.taskdefsClass Classloader
- java.lang.Object
- org.apache.tools.ant.ProjectComponent
- org.apache.tools.ant.Task
- org.apache.tools.ant.taskdefs.Classloader
- All Implemented Interfaces:
- java.lang.Cloneable
public class Classloader extends TaskEXPERIMENTAL Create or modifies ClassLoader. The required pathRef parameter will be used to add classpath elements. The classpath is a regular path. Currently only file components are supported (future extensions may allow URLs). You can modify the core loader by not specifying any name or using "ant.coreLoader". (the core loader is used to load system ant tasks and for taskdefs that don't specify an explicit path). Taskdef and typedef can use the loader you create if the name follows the "ant.loader.NAME" pattern. NAME will be used as a pathref when calling taskdef. This tasks will not modify the core loader if "build.sysclasspath=only" The typical use is:<path id="ant.deps" > <fileset dir="myDir" > <include name="junit.jar, bsf.jar, js.jar, etc"/> </fileset> </path> <classloader pathRef="ant.deps" />
Field Summary
Fields Modifier and Type Field and Description static java.lang.String
SYSTEM_LOADER_REF
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
Constructor Summary
Constructors Constructor and Description Classloader()
Default constructor
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method and Description Path
createClasspath()
Create a classpath.void
execute()
do the classloader manipulation.void
setClasspath(Path classpath)
Set the classpath to be used when searching for component being definedvoid
setClasspathRef(Reference pathRef)
Specify which path will be used.void
setName(java.lang.String name)
Name of the loader.void
setParentFirst(boolean b)
Set reverse attribute.void
setParentName(java.lang.String name)
Set the name of the parent.void
setReset(boolean b)
Reset the classloader, if it already exists.void
setReverse(boolean b)
Deprecated.use setParentFirst with a negated argument instead
Methods inherited from class org.apache.tools.ant.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
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
Method Detail
setName
public void setName(java.lang.String name)Name of the loader. If none, the default loader will be modified
- Parameters:
name
- the name of this loader
setReset
public void setReset(boolean b)Reset the classloader, if it already exists. A new loader will be created and all the references to the old one will be removed. (it is not possible to remove paths from a loader). The new path will be used.
- Parameters:
b
- true if the loader is to be reset.
setReverse
public void setReverse(boolean b)Deprecated. use setParentFirst with a negated argument insteadSet reverse attribute.
- Parameters:
b
- if true reverse the normal classloader lookup.
setParentFirst
public void setParentFirst(boolean b)Set reverse attribute.
- Parameters:
b
- if true reverse the normal classloader lookup.
setParentName
public void setParentName(java.lang.String name)Set the name of the parent.
- Parameters:
name
- the parent name.
setClasspathRef
public void setClasspathRef(Reference pathRef) throws BuildExceptionSpecify which path will be used. If the loader already exists and is an AntClassLoader (or any other loader we can extend), the path will be added to the loader.
- Parameters:
pathRef
- a reference to a path.- Throws:
BuildException
- if there is a problem.
setClasspath
public void setClasspath(Path classpath)Set the classpath to be used when searching for component being defined
- Parameters:
classpath
- an Ant Path object containing the classpath.
createClasspath
public Path createClasspath()Create a classpath.
- Returns:
- a path for configuration.