Class VMRunnerConfiguration

java.lang.Object
org.eclipse.jdt.launching.VMRunnerConfiguration

public class VMRunnerConfiguration extends Object
Holder for various arguments passed to a VM runner. Mandatory parameters are passed in the constructor; optional arguments, via setters.

Clients may instantiate this class.

Restriction:
This class is not intended to be sub-classed by clients.
  • Constructor Details

    • VMRunnerConfiguration

      public VMRunnerConfiguration(String classToLaunch, String[] classPath)
      Creates a new configuration for launching a VM to run the given main class using the given class path.
      Parameters:
      classToLaunch - The fully qualified name of the class to launch. May not be null.
      classPath - The classpath. May not be null.
  • Method Details

    • setVMSpecificAttributesMap

      public void setVMSpecificAttributesMap(Map<String,Object> map)
      Sets the Map that contains String name/value pairs that represent VM-specific attributes.
      Parameters:
      map - the Map of VM-specific attributes.
      Since:
      2.0
    • setVMArguments

      public void setVMArguments(String[] args)
      Sets the custom VM arguments. These arguments will be appended to the list of VM arguments that a VM runner uses when launching a VM. Typically, these VM arguments are set by the user. These arguments will not be interpreted by a VM runner, the client is responsible for passing arguments compatible with a particular VM runner.
      Parameters:
      args - the list of VM arguments
    • setProgramArguments

      public void setProgramArguments(String[] args)
      Sets the custom program arguments. These arguments will be appended to the list of program arguments that a VM runner uses when launching a VM (in general: none). Typically, these VM arguments are set by the user. These arguments will not be interpreted by a VM runner, the client is responsible for passing arguments compatible with a particular VM runner.
      Parameters:
      args - the list of arguments
    • setEnvironment

      public void setEnvironment(String[] environment)
      Sets the environment for the Java program. The Java VM will be launched in the given environment.
      Parameters:
      environment - the environment for the Java program specified as an array of strings, each element specifying an environment variable setting in the format name=value
      Since:
      3.0
    • setBootClassPath

      public void setBootClassPath(String[] bootClassPath)
      Sets the boot classpath. Note that the boot classpath will be passed to the VM "as is". This means it has to be complete. Interpretation of the boot class path is up to the VM runner this object is passed to.

      In release 3.0, support has been added for appending and prepending the boot classpath. Generally an IVMRunner should use the prepend, main, and append boot classpaths provided. However, in the case that an IVMRunner does not support these options, a complete bootpath should also be specified.

      Parameters:
      bootClassPath - The boot classpath. An empty array indicates an empty bootpath and null indicates a default bootpath.
    • getVMSpecificAttributesMap

      public Map<String,Object> getVMSpecificAttributesMap()
      Returns the Map that contains String name/value pairs that represent VM-specific attributes.
      Returns:
      The Map of VM-specific attributes or null.
      Since:
      2.0
    • getClassToLaunch

      public String getClassToLaunch()
      Returns the name of the class to launch.
      Returns:
      The fully qualified name of the class to launch. Will not be null.
    • getClassPath

      public String[] getClassPath()
      Returns the classpath.
      Returns:
      the classpath
    • getBootClassPath

      public String[] getBootClassPath()
      Returns the boot classpath. An empty array indicates an empty bootpath and null indicates a default bootpath.

      In 3.0, support has been added for prepending and appending to the boot classpath. The new attributes are stored in the VM specific attributes map using the following keys defined in IJavaLaunchConfigurationConstants:

      • ATTR_BOOTPATH_PREPEND
      • ATTR_BOOTPATH_APPEND
      • ATTR_BOOTPATH
      Returns:
      The boot classpath. An empty array indicates an empty bootpath and null indicates a default bootpath.
      See Also:
    • getVMArguments

      public String[] getVMArguments()
      Returns the arguments to the VM itself.
      Returns:
      The VM arguments. Default is an empty array. Will not be null.
      See Also:
    • getProgramArguments

      public String[] getProgramArguments()
      Returns the arguments to the Java program.
      Returns:
      The Java program arguments. Default is an empty array. Will not be null.
      See Also:
    • getEnvironment

      public String[] getEnvironment()
      Returns the environment for the Java program or null
      Returns:
      The Java program environment. Default is null
      Since:
      3.0
    • setWorkingDirectory

      public void setWorkingDirectory(String path)
      Sets the working directory for a launched VM.
      Parameters:
      path - the absolute path to the working directory to be used by a launched VM, or null if the default working directory is to be inherited from the current process
      Since:
      2.0
    • getWorkingDirectory

      public String getWorkingDirectory()
      Returns the working directory of a launched VM.
      Returns:
      the absolute path to the working directory of a launched VM, or null if the working directory is inherited from the current process
      Since:
      2.0
    • setResumeOnStartup

      public void setResumeOnStartup(boolean resume)
      Sets whether the VM is resumed on startup when launched in debug mode. Has no effect when not in debug mode.
      Parameters:
      resume - whether to resume the VM on startup
      Since:
      3.0
    • isResumeOnStartup

      public boolean isResumeOnStartup()
      Returns whether the VM is resumed on startup when launched in debug mode. Has no effect when no in debug mode. Default value is true for backwards compatibility.
      Returns:
      whether to resume the VM on startup
      Since:
      3.0
    • setModulepath

      public void setModulepath(String[] modulepath)
      Sets the modulepath.
      Parameters:
      modulepath - modulepath
      Since:
      3.10
    • getModulepath

      public String[] getModulepath()
      Returns the Modulepath.
      Returns:
      the modulepath
      Since:
      3.10
    • setModuleDescription

      public void setModuleDescription(String fModuleDescription)
      Sets the fModuleDescription.
      Parameters:
      fModuleDescription - fModuleDescription
      Since:
      3.10
    • getModuleDescription

      public String getModuleDescription()
      Returns the ModuleDescription.
      Returns:
      the ModuleDescription
      Since:
      3.10
    • getOverrideDependencies

      public String getOverrideDependencies()
      Gets the fOverrideDependencies.
      Returns:
      the fOverrideDependencies
      Since:
      3.10
    • setOverrideDependencies

      public void setOverrideDependencies(String fOverrideDependencies)
      Sets the fOverrideDependencies.
      Parameters:
      fOverrideDependencies - the fOverrideDependencies to set
      Since:
      3.10
    • isPreviewEnabled

      public boolean isPreviewEnabled()
      Gets the fPreviewEnabled.
      Returns:
      the fPreviewEnabled
      Since:
      3.14
    • setPreviewEnabled

      public void setPreviewEnabled(boolean fPreviewEnabled)
      Sets the fPreviewEnabled.
      Parameters:
      fPreviewEnabled - the fPreviewEnabled to set
      Since:
      3.14
    • isMergeOutput

      public boolean isMergeOutput()
      Gets the fMergeOutput.
      Returns:
      the fMergeOutput
      Since:
      3.15
    • setMergeOutput

      public void setMergeOutput(boolean fMergeOutput)
      Sets the fMergeOutput. If true the VM will be run with redirectErrorStream(true) to merge error and standard output.
      Parameters:
      fMergeOutput - the fMergeOutput to set
      Since:
      3.15