org.apache.tools.ant.taskdefs
Class Classloader
- Cloneable
EXPERIMENTAL
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" />
bindToOwner , execute , getOwningTarget , getRuntimeConfigurableWrapper , getTaskName , getTaskType , getWrapper , handleErrorFlush , handleErrorOutput , handleFlush , handleInput , handleOutput , init , isInvalid , log , log , log , log , maybeConfigure , perform , reconfigure , setOwningTarget , setRuntimeConfigurableWrapper , setTaskName , setTaskType |
SYSTEM_LOADER_REF
public static final String SYSTEM_LOADER_REF
Classloader
public Classloader()
Default constructor
createClasspath
public Path createClasspath()
Create a classpath.
- a path for configuration.
execute
public void execute()
do the classloader manipulation.
- execute in interface Task
setClasspath
public void setClasspath(Path classpath)
Set the classpath to be used when searching for component being defined
classpath
- an Ant Path object containing the classpath.
setClasspathRef
public void setClasspathRef(Reference pathRef)
throws BuildException
Specify 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.
pathRef
- a reference to a path.
setName
public void setName(String name)
Name of the loader. If none, the default loader will be modified
name
- the name of this loader
setParentFirst
public void setParentFirst(boolean b)
Set reverse attribute.
b
- if true reverse the normal classloader lookup.
setParentName
public void setParentName(String name)
Set the name of the parent.
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.
b
- true if the loader is to be reset.
setReverse
public void setReverse(boolean b)
Set reverse attribute.
b
- if true reverse the normal classloader lookup.