org.apache.tools.ant.taskdefs

Class ExecuteJava

public class ExecuteJava extends Object implements Runnable, TimeoutObserver

Execute a Java class.

Since: Ant 1.2

Method Summary
voidexecute(Project project)
Execute the Java class against the specified Ant Project.
intfork(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.
booleankilledProcess()
Get whether the process was killed.
voidrun()
Run this ExecuteJava in a Thread.
voidsetClasspath(Path p)
Set the classpath to be used when running the Java class.
voidsetJavaCommand(Commandline javaCommand)
Set the Java "command" for this ExecuteJava.
voidsetOutput(PrintStream out)
Set the stream to which all output (System.out as well as System.err) will be written.
voidsetPermissions(Permissions permissions)
Set the permissions for the application run.
voidsetSystemProperties(CommandlineJava.SysProperties s)
Set the system properties to use when running the Java class.
voidsetTimeout(Long timeout)
Set the timeout for this ExecuteJava.
static voidsetupCommandLineForVMS(Execute exe, String[] command)
On VMS platform, we need to create a special java options file containing the arguments and classpath for the java command.
voidtimeoutOccured(Watchdog w)
Mark timeout as having occurred.

Method Detail

execute

public void execute(Project project)
Execute the Java class against the specified Ant Project.

Parameters: project the Project to use.

Throws: BuildException on error.

fork

public 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.

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

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

run

public void run()
Run this ExecuteJava in a Thread.

Since: Ant 1.5

setClasspath

public void setClasspath(Path p)
Set the classpath to be used when running the Java class.

Parameters: p an Ant Path object containing the classpath.

setJavaCommand

public void setJavaCommand(Commandline javaCommand)
Set the Java "command" for this ExecuteJava.

Parameters: javaCommand the classname and arguments in a Commandline.

setOutput

public void setOutput(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.

setPermissions

public void setPermissions(Permissions permissions)
Set the permissions for the application run.

Parameters: permissions the Permissions to use.

Since: Ant 1.6

setSystemProperties

public void setSystemProperties(CommandlineJava.SysProperties s)
Set the system properties to use when running the Java class.

Parameters: s CommandlineJava system properties.

setTimeout

public void setTimeout(Long timeout)
Set the timeout for this ExecuteJava.

Parameters: timeout timeout as Long.

Since: Ant 1.5

setupCommandLineForVMS

public static void setupCommandLineForVMS(Execute exe, String[] command)
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.

timeoutOccured

public void timeoutOccured(Watchdog w)
Mark timeout as having occurred.

Parameters: w the responsible Watchdog.

Since: Ant 1.5