Package org.apache.tools.ant.taskdefs
Class ExecuteJava
java.lang.Object
org.apache.tools.ant.taskdefs.ExecuteJava
- All Implemented Interfaces:
java.lang.Runnable
,TimeoutObserver
public class ExecuteJava extends java.lang.Object implements java.lang.Runnable, TimeoutObserver
Execute a Java class.
- Since:
- Ant 1.2
-
Constructor Summary
Constructors Constructor Description ExecuteJava()
-
Method Summary
Modifier and Type Method Description void
execute(Project project)
Execute the Java class against the specified Ant Project.int
fork(ProjectComponent pc)
Run the Java command in a separate VM, this does not give you the full flexibility of the Java task, but may be enough for simple needs.boolean
killedProcess()
Get whether the process was killed.void
run()
Run this ExecuteJava in a Thread.void
setClasspath(Path p)
Set the classpath to be used when running the Java class.void
setJavaCommand(Commandline javaCommand)
Set the Java "command" for this ExecuteJava.void
setOutput(java.io.PrintStream out)
Deprecated.since 1.4.x.void
setPermissions(Permissions permissions)
Set the permissions for the application run.void
setSystemProperties(CommandlineJava.SysProperties s)
Set the system properties to use when running the Java class.void
setTimeout(java.lang.Long timeout)
Set the timeout for this ExecuteJava.static void
setupCommandLineForVMS(Execute exe, java.lang.String[] command)
On VMS platform, we need to create a special java options file containing the arguments and classpath for the java command.void
timeoutOccured(Watchdog w)
Mark timeout as having occurred.
-
Constructor Details
-
ExecuteJava
public ExecuteJava()
-
-
Method Details
-
setJavaCommand
Set the Java "command" for this ExecuteJava.- Parameters:
javaCommand
- the classname and arguments in a Commandline.
-
setClasspath
Set the classpath to be used when running the Java class.- Parameters:
p
- an Ant Path object containing the classpath.
-
setSystemProperties
Set the system properties to use when running the Java class.- Parameters:
s
- CommandlineJava system properties.
-
setPermissions
Set the permissions for the application run.- Parameters:
permissions
- the Permissions to use.- Since:
- Ant 1.6
-
setOutput
@Deprecated public void setOutput(java.io.PrintStream out)Deprecated.since 1.4.x. manage output at the task level.Set the stream to which all output (System.out as well as System.err) will be written.- Parameters:
out
- the PrintStream where output should be sent.
-
setTimeout
public void setTimeout(java.lang.Long timeout)Set the timeout for this ExecuteJava.- Parameters:
timeout
- timeout as Long.- Since:
- Ant 1.5
-
execute
Execute the Java class against the specified Ant Project.- Parameters:
project
- the Project to use.- Throws:
BuildException
- on error.
-
run
public void run()Run this ExecuteJava in a Thread.- Specified by:
run
in interfacejava.lang.Runnable
- Since:
- Ant 1.5
-
timeoutOccured
Mark timeout as having occurred.- Specified by:
timeoutOccured
in interfaceTimeoutObserver
- Parameters:
w
- the responsible Watchdog.- Since:
- Ant 1.5
-
killedProcess
public boolean killedProcess()Get whether the process was killed.- Returns:
true
if the process was killed, false otherwise.- Since:
- 1.19, Ant 1.5
-
fork
Run the Java command in a separate VM, this does not give you the full flexibility of the Java task, but may be enough for simple needs.- Parameters:
pc
- the ProjectComponent to use for logging, etc.- Returns:
- the exit status of the subprocess.
- Throws:
BuildException
- on error.- Since:
- Ant 1.6.3
-
setupCommandLineForVMS
On VMS platform, we need to create a special java options file containing the arguments and classpath for the java command. The special file is supported by the "-V" switch on the VMS JVM.- Parameters:
exe
- the Execute instance to alter.command
- the command-line.
-