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:
    IVMInstall2
    • Method Detail

      • 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(LibraryLocation[])
      • 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