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 Detail

      • ExecuteJava

        public ExecuteJava()
    • 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

        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:
        run in interface java.lang.Runnable
        Since:
        Ant 1.5
      • timeoutOccured

        public void timeoutOccured(Watchdog w)
        Mark timeout as having occurred.
        Specified by:
        timeoutOccured in interface TimeoutObserver
        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

        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.