Interface IVMInstall

All Known Implementing Classes:
AbstractVMInstall, VMStandin

public interface IVMInstall
Represents a particular installation of a VM. A VM instance holds all parameters specific to a VM installation. Unlike VM types, VM instances can be created and configured dynamically at run-time. This is typically done by the user interactively in the UI.

A VM install is responsible for creating VM runners to launch a Java program in a specific mode.

This interface is intended to be implemented by clients that contribute to the "org.eclipse.jdt.launching.vmInstallTypes" extension point. Rather than implementing this interface directly, it is strongly recommended that clients subclass AbstractVMInstall to be insulated from potential API additions. In 3.1, a new optional interface has been added for implementors of this interface - IVMInstall2. The new interface is implemented by AbstractVMInstall.

See Also:
  • Method Details

    • getVMRunner

      IVMRunner getVMRunner(String mode)
      Returns a VM runner that runs this installed VM in the given mode.
      Parameters:
      mode - the mode the VM should be launched in; one of the constants declared in org.eclipse.debug.core.ILaunchManager
      Returns:
      a VMRunner for a given mode May return null if the given mode is not supported by this VM.
      See Also:
      • ILaunchManager
    • getId

      String getId()
      Returns the id for this VM. VM IDs are unique within the VMs of a given VM type. The VM id is not intended to be presented to users.
      Returns:
      the VM identifier. Must not return null.
    • getName

      String getName()
      Returns the display name of this VM. The VM name is intended to be presented to users.
      Returns:
      the display name of this VM. May return null.
    • setName

      void setName(String name)
      Sets the display name of this VM. The VM name is intended to be presented to users.
      Parameters:
      name - the display name of this VM
    • getInstallLocation

      File getInstallLocation()
      Returns the root directory of the install location of this VM.
      Returns:
      the root directory of this VM installation. May return null.
    • setInstallLocation

      void setInstallLocation(File installLocation)
      Sets the root directory of the install location of this VM.
      Parameters:
      installLocation - the root directory of this VM installation
    • getVMInstallType

      IVMInstallType getVMInstallType()
      Returns the VM type of this VM.
      Returns:
      the VM type that created this IVMInstall instance
    • getLibraryLocations

      LibraryLocation[] getLibraryLocations()
      Returns the library locations of this IVMInstall. Generally, clients should use JavaRuntime.getLibraryLocations(IVMInstall) to determine the libraries associated with this VM install.
      Returns:
      The library locations of this IVMInstall. Returns null to indicate that this VM install uses the default library locations associated with this VM's install type.
      Since:
      2.0
      See Also:
    • setLibraryLocations

      void setLibraryLocations(LibraryLocation[] locations)
      Sets the library locations of this IVMInstall.
      Parameters:
      locations - The LibraryLocations to associate with this IVMInstall. May be null to indicate that this VM install uses the default library locations associated with this VM's install type.
      Since:
      2.0
    • setJavadocLocation

      void setJavadocLocation(URL url)
      Sets the Javadoc location associated with this VM install.
      Parameters:
      url - a url pointing to the Javadoc location associated with this VM install
      Since:
      2.0
    • getJavadocLocation

      URL getJavadocLocation()
      Returns the Javadoc location associated with this VM install.
      Returns:
      a url pointing to the Javadoc location associated with this VM install, or null if none
      Since:
      2.0
    • getVMArguments

      String[] getVMArguments()
      Returns VM arguments to be used with this vm install whenever this VM is launched as they should be passed to the command line, or null if none.
      Returns:
      VM arguments to be used with this vm install whenever this VM is launched as they should be passed to the command line, or null if none
      Since:
      3.0
    • setVMArguments

      @Deprecated void setVMArguments(String[] vmArgs)
      Deprecated.
      if possible, clients should use setVMArgs(String) on IVMInstall2 when possible
      Sets VM arguments to be used with this vm install whenever this VM is launched, possibly null. This is equivalent to setVMArgs(String) with whitespace character delimited arguments.
      Parameters:
      vmArgs - VM arguments to be used with this vm install whenever this VM is launched, possibly null
      Since:
      3.0