|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.apache.tools.ant.ProjectComponent | +--org.apache.tools.ant.Task | +--org.apache.tools.ant.taskdefs.MatchingTask | +--org.apache.tools.ant.taskdefs.Rmic
Runs the rmic compiler against classes.
Rmic can be run on a single class (as specified with the classname
attribute) or a number of classes at once (all classes below base that
are neither _Stub nor _Skel classes). If you want to rmic a single
class and this class is a class nested into another class, you have to
specify the classname in the form Outer$$Inner
instead of
Outer.Inner
.
It is possible to refine the set of files that are being rmiced. This can be done with the includes, includesfile, excludes, excludesfile and defaultexcludes attributes. With the includes or includesfile attribute you specify the files you want to have included by using patterns. The exclude or excludesfile attribute is used to specify the files you want to have excluded. This is also done with patterns. And finally with the defaultexcludes attribute, you can specify whether you want to use default exclusions or not. See the section on directory based tasks, on how the inclusion/exclusion of files works, and how to write patterns.
This task forms an implicit FileSet and
supports all attributes of <fileset>
(dir
becomes base
) as well as the nested
<include>
, <exclude>
and
<patternset>
elements.
It is possible to use different compilers. This can be selected
with the "build.rmic" property or the compiler
attribute. There are three choices:
The miniRMI project contains a compiler implementation for this task as well, please consult miniRMI's documentation to learn how to use it.
Nested Class Summary | |
class |
Rmic.ImplementationSpecificArgument
Adds an "compiler" attribute to Commandline$Attribute used to filter command line attributes based on the current implementation. |
Field Summary |
Fields inherited from class org.apache.tools.ant.taskdefs.MatchingTask |
fileset |
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 | |
Rmic()
|
Method Summary | |
Path |
createClasspath()
Creates a nested classpath element. |
Rmic.ImplementationSpecificArgument |
createCompilerArg()
Adds an implementation specific command line argument. |
Path |
createExtdirs()
Maybe creates a nested extdirs element. |
void |
execute()
execute by creating an instance of an implementation class and getting to do the work |
java.io.File |
getBase()
Gets the base directory to output generated class. |
java.lang.String |
getClassname()
Gets the class name to compile. |
Path |
getClasspath()
Gets the classpath. |
java.util.Vector |
getCompileList()
|
java.lang.String |
getCompiler()
get the name of the current compiler |
java.lang.String[] |
getCurrentCompilerArgs()
Get the additional implementation specific command line arguments. |
boolean |
getDebug()
Gets the debug flag. |
Path |
getExtdirs()
Gets the extension directories that will be used during the compilation. |
java.util.Vector |
getFileList()
Gets file list to compile. |
boolean |
getFiltering()
|
boolean |
getIdl()
Gets IDL flags. |
java.lang.String |
getIdlopts()
Gets additional arguments for idl compile. |
boolean |
getIiop()
Gets iiop flags. |
java.lang.String |
getIiopopts()
Gets additional arguments for iiop. |
boolean |
getIncludeantruntime()
Gets whether or not the ant classpath is to be included in the task's classpath. |
boolean |
getIncludejavaruntime()
Gets whether or not the java runtime should be included in this task's classpath. |
java.lang.ClassLoader |
getLoader()
Classloader for the user-specified classpath. |
java.lang.Class |
getRemoteInterface(java.lang.Class testClass)
Returns the topmost interface that extends Remote for a given class - if one exists. |
java.io.File |
getSourceBase()
Gets the source dirs to find the source java files. |
java.lang.String |
getStubVersion()
|
boolean |
getVerify()
Get verify flag. |
boolean |
isValidRmiRemote(java.lang.String classname)
Load named class and test whether it can be rmic'ed |
protected void |
scanDir(java.io.File baseDir,
java.lang.String[] files,
FileNameMapper mapper)
Scans the directory looking for class files to be compiled. |
void |
setBase(java.io.File base)
Sets the location to store the compiled files; required |
void |
setClassname(java.lang.String classname)
Sets the class to run rmic against;
optional |
void |
setClasspath(Path classpath)
Set the classpath to be used for this compilation. |
void |
setClasspathRef(Reference r)
Adds to the classpath a reference to a <path> defined elsewhere. |
void |
setCompiler(java.lang.String compiler)
Sets the compiler implementation to use; optional, defaults to the value of the build.rmic property,
or failing that, default compiler for the current VM |
void |
setDebug(boolean debug)
generate debug info (passes -g to rmic); optional, defaults to false |
void |
setExtdirs(Path extdirs)
Sets the extension directories that will be used during the compilation; optional. |
void |
setFiltering(boolean filter)
indicates whether token filtering should take place; optional, default=false |
void |
setIdl(boolean idl)
Indicates that IDL output should be generated. |
void |
setIdlopts(java.lang.String idlopts)
pass additional arguments for idl compile |
void |
setIiop(boolean iiop)
Indicates that IIOP compatible stubs should be generated; optional, defaults to false if not set. |
void |
setIiopopts(java.lang.String iiopopts)
Set additional arguments for iiop |
void |
setIncludeantruntime(boolean include)
Sets whether or not to include ant's own classpath in this task's classpath. |
void |
setIncludejavaruntime(boolean include)
task's classpath. |
void |
setSourceBase(java.io.File sourceBase)
optional directory to save generated source files to. |
void |
setStubVersion(java.lang.String stubVersion)
Specify the JDK version for the generated stub code. |
void |
setVerify(boolean verify)
Flag to enable verification so that the classes found by the directory match are checked to see if they implement java.rmi.Remote. |
Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask |
add, addAnd, addContains, addContainsRegexp, addCustom, addDate, addDepend, addDepth, addDifferent, addFilename, addMajority, addModified, addNone, addNot, addOr, addPresent, addSelector, addSize, addType, appendSelector, createExclude, createExcludesFile, createInclude, createIncludesFile, createPatternSet, getDirectoryScanner, getImplicitFileSet, 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, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, reconfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType |
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 |
public Rmic()
Method Detail |
public void setBase(java.io.File base)
public java.io.File getBase()
public void setClassname(java.lang.String classname)
rmic
against;
optional
public java.lang.String getClassname()
public void setSourceBase(java.io.File sourceBase)
public java.io.File getSourceBase()
public void setStubVersion(java.lang.String stubVersion)
public java.lang.String getStubVersion()
public void setFiltering(boolean filter)
public boolean getFiltering()
public void setDebug(boolean debug)
public boolean getDebug()
public void setClasspath(Path classpath)
public Path createClasspath()
public void setClasspathRef(Reference r)
public Path getClasspath()
public void setVerify(boolean verify)
public boolean getVerify()
public void setIiop(boolean iiop)
public boolean getIiop()
public void setIiopopts(java.lang.String iiopopts)
public java.lang.String getIiopopts()
public void setIdl(boolean idl)
public boolean getIdl()
public void setIdlopts(java.lang.String idlopts)
public java.lang.String getIdlopts()
public java.util.Vector getFileList()
public void setIncludeantruntime(boolean include)
true
.
public boolean getIncludeantruntime()
public void setIncludejavaruntime(boolean include)
public boolean getIncludejavaruntime()
public void setExtdirs(Path extdirs)
public Path createExtdirs()
public Path getExtdirs()
public java.util.Vector getCompileList()
public void setCompiler(java.lang.String compiler)
build.rmic
property,
or failing that, default compiler for the current VM
public java.lang.String getCompiler()
public Rmic.ImplementationSpecificArgument createCompilerArg()
public java.lang.String[] getCurrentCompilerArgs()
public void execute() throws BuildException
execute
in class Task
BuildException
- if something goes wrong with the buildprotected void scanDir(java.io.File baseDir, java.lang.String[] files, FileNameMapper mapper)
public boolean isValidRmiRemote(java.lang.String classname)
public java.lang.Class getRemoteInterface(java.lang.Class testClass)
public java.lang.ClassLoader getLoader()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |