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 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(java.io.PrintStream out)Deprecated.since 1.4.x.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(java.lang.Long timeout)Set the timeout for this ExecuteJava.static voidsetupCommandLineForVMS(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.voidtimeoutOccured(Watchdog w)Mark timeout as having occurred.
-
-
-
Method Detail
-
setJavaCommand
public void setJavaCommand(Commandline javaCommand)
Set the Java "command" for this ExecuteJava.- Parameters:
javaCommand- the classname and arguments in a Commandline.
-
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.
-
setSystemProperties
public void setSystemProperties(CommandlineJava.SysProperties s)
Set the system properties to use when running the Java class.- Parameters:
s- CommandlineJava system properties.
-
setPermissions
public void setPermissions(Permissions permissions)
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
public void execute(Project project) throws BuildException
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:
runin interfacejava.lang.Runnable- Since:
- Ant 1.5
-
timeoutOccured
public void timeoutOccured(Watchdog w)
Mark timeout as having occurred.- Specified by:
timeoutOccuredin interfaceTimeoutObserver- Parameters:
w- the responsible Watchdog.- Since:
- Ant 1.5
-
killedProcess
public boolean killedProcess()
Get whether the process was killed.- Returns:
trueif the process was killed, false otherwise.- Since:
- 1.19, Ant 1.5
-
fork
public int fork(ProjectComponent pc) throws BuildException
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
public 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. The special file is supported by the "-V" switch on the VMS JVM.- Parameters:
exe- the Execute instance to alter.command- the command-line.
-
-