org.apache.tools.ant.taskdefs.launcherClass CommandLauncher
- java.lang.Object
- org.apache.tools.ant.taskdefs.launcher.CommandLauncher
- Direct Known Subclasses:
- CommandLauncherProxy, Java13CommandLauncher
public class CommandLauncher extends java.lang.Object
A command launcher for a particular JVM/OS platform. This class is a general purpose command launcher which can only launch commands in the current working directory.
Field Summary
Fields Modifier and Type Field and Description protected static FileUtils
FILE_UTILS
Constructor Summary
Constructors Constructor and Description CommandLauncher()
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description java.lang.Process
exec(Project project, java.lang.String[] cmd, java.lang.String[] env)
Launches the given command in a new process.java.lang.Process
exec(Project project, java.lang.String[] cmd, java.lang.String[] env, java.io.File workingDir)
Launches the given command in a new process, in the given working directory.static CommandLauncher
getShellLauncher(Project project)
Obtains the shell launcher configured for the given project or the default shell launcher.static CommandLauncher
getVMLauncher(Project project)
Obtains the VM launcher configured for the given project or the default VM launcher.static void
setShellLauncher(Project project, CommandLauncher launcher)
Sets the shell launcher to use for the given project.static void
setVMLauncher(Project project, CommandLauncher launcher)
Sets the VM launcher to use for the given project.
Field Detail
FILE_UTILS
protected static final FileUtils FILE_UTILS
Method Detail
exec
public java.lang.Process exec(Project project, java.lang.String[] cmd, java.lang.String[] env) throws java.io.IOExceptionLaunches the given command in a new process.
- Parameters:
project
- The project that the command is part of.cmd
- The command to execute.env
- The environment for the new process. If null, the environment of the current process is used.- Returns:
- the created Process.
- Throws:
java.io.IOException
- if attempting to run a command in a specific directory.
exec
public java.lang.Process exec(Project project, java.lang.String[] cmd, java.lang.String[] env, java.io.File workingDir) throws java.io.IOExceptionLaunches the given command in a new process, in the given working directory.
- Parameters:
project
- The project that the command is part of.cmd
- The command to execute.env
- The environment for the new process. If null, the environment of the current process is used.workingDir
- The directory to start the command in. If null, the current directory is used.- Returns:
- the created Process.
- Throws:
java.io.IOException
- if trying to change directory.
getShellLauncher
public static CommandLauncher getShellLauncher(Project project)Obtains the shell launcher configured for the given project or the default shell launcher.
- Parameters:
project
- Project- Returns:
- CommandLauncher
getVMLauncher
public static CommandLauncher getVMLauncher(Project project)Obtains the VM launcher configured for the given project or the default VM launcher.
- Parameters:
project
- Project- Returns:
- CommandLauncher
setVMLauncher
public static void setVMLauncher(Project project, CommandLauncher launcher)Sets the VM launcher to use for the given project.
- Parameters:
project
- Projectlauncher
- CommandLauncher
setShellLauncher
public static void setShellLauncher(Project project, CommandLauncher launcher)Sets the shell launcher to use for the given project.
- Parameters:
project
- Projectlauncher
- CommandLauncher