# Uses of Interface
org.eclipse.jdt.launching.IVMInstall

Packages that use IVMInstall
Package
Description
org.eclipse.jdt.launching
Application programming interfaces for interaction with the Eclipse Java launching support.
org.eclipse.jdt.launching.environments
Application programming interfaces and classes for execution environments.

## Uses of IVMInstall in org.eclipse.jdt.launching

Classes in org.eclipse.jdt.launching that implement IVMInstall
Modifier and Type
Class
Description
`class`
`AbstractVMInstall`
Abstract implementation of a VM install.
`class`
`VMStandin`
An implementation of IVMInstall that is used for manipulating VMs without necessarily committing changes.
Methods in org.eclipse.jdt.launching that return IVMInstall
Modifier and Type
Method
Description
`static IVMInstall`
JavaRuntime.`computeVMInstall(org.eclipse.debug.core.ILaunchConfiguration configuration)`
Returns the VM install for the given launch configuration.
`IVMInstall`
VMStandin.`convertToRealVM()`
If no corresponding 'real' VM exists, create one and populate it from this stand-in instance.
`IVMInstall`
AbstractVMInstallType.`createVMInstall(String id)`
`IVMInstall`
IVMInstallType.`createVMInstall(String id)`
Creates a new instance of this VM Install type.
`protected abstract IVMInstall`
AbstractVMInstallType.`doCreateVMInstall(String id)`
Subclasses should return a new instance of the appropriate `IVMInstall` subclass from this method.
`IVMInstall`
AbstractVMInstallType.`findVMInstall(String id)`
`IVMInstall`
IVMInstallType.`findVMInstall(String id)`
Finds the VM with the given id.
`IVMInstall`
AbstractVMInstallType.`findVMInstallByName(String name)`
`IVMInstall`
IVMInstallType.`findVMInstallByName(String name)`
Finds the VM with the given name.
`static IVMInstall`
JavaRuntime.`getDefaultVMInstall()`
Return the default VM set with `setDefaultVM()`.
`static IVMInstall`
JavaRuntime.`getVMFromCompositeId(String idString)`
Return the VM corresponding to the specified composite Id.
`IVMInstall`
AbstractJavaLaunchConfigurationDelegate.`getVMInstall(org.eclipse.debug.core.ILaunchConfiguration configuration)`
Returns the VM install specified by the given launch configuration, or `null` if none.
`static IVMInstall`
JavaRuntime.`getVMInstall(org.eclipse.core.runtime.IPath jreContainerPath)`
Returns the JRE referenced by the specified JRE classpath container path or `null` if none.
`static IVMInstall`
JavaRuntime.`getVMInstall(IJavaProject project)`
Returns the VM assigned to build the given Java project.
`IVMInstall[]`
AbstractVMInstallType.`getVMInstalls()`
`IVMInstall[]`
IVMInstallType.`getVMInstalls()`
Returns all VM instances managed by this VM type.
`IVMInstall`
IRuntimeClasspathEntryResolver.`resolveVMInstall(IClasspathEntry entry)`
Returns a VM install associated with the given classpath entry, or `null` if none.
`IVMInstall`
AbstractJavaLaunchConfigurationDelegate.`verifyVMInstall(org.eclipse.debug.core.ILaunchConfiguration configuration)`
Verifies the VM install specified by the given launch configuration exists and returns the VM install.
Methods in org.eclipse.jdt.launching with parameters of type IVMInstall
Modifier and Type
Method
Description
`protected String[]`
AbstractVMRunner.`combineVmArgs(VMRunnerConfiguration configuration, IVMInstall vmInstall)`
Combines and returns VM arguments specified by the runner configuration, with those specified by the VM install, if any.
`static int`
JavaRuntime.`compareJavaVersions(IVMInstall vm, String ver)`
Compares the version of vm and a version of the Java platform.
`void`
IVMInstallChangedListener.`defaultVMInstallChanged(IVMInstall previous, IVMInstall current)`
Notification that the workspace default VM install has changed.
`static void`
JavaRuntime.`fireVMAdded(IVMInstall vm)`
Notifies all VM install changed listeners of the VM addition
`static void`
JavaRuntime.`fireVMRemoved(IVMInstall vm)`
Notifies all VM install changed listeners of the VM removal
`static String`
JavaRuntime.`getCompositeIdFromVM(IVMInstall vm)`
Returns a String that uniquely identifies the specified VM across all VM types.
`static LibraryLocation[]`
JavaRuntime.`getLibraryLocations(IVMInstall vm)`
Evaluates library locations for a IVMInstall.
`protected boolean`
AbstractVMRunner.`isModular(VMRunnerConfiguration config, IVMInstall vmInstall)`
Examines the project and install for presence of module and execution support.
`static boolean`
JavaRuntime.`isModularJava(IVMInstall vm)`
Checks if vm install is modular( version greater than 8).
`static org.eclipse.core.runtime.IPath`
JavaRuntime.`newJREContainerPath(IVMInstall vm)`
Returns a path for the JRE classpath container identifying the specified VM install by type and name.
`static void`
JavaRuntime.`setDefaultVMInstall(IVMInstall vm, org.eclipse.core.runtime.IProgressMonitor monitor)`
Sets a VM as the system-wide default VM, and notifies registered VM install change listeners of the change.
`static void`
JavaRuntime.`setDefaultVMInstall(IVMInstall vm, org.eclipse.core.runtime.IProgressMonitor monitor, boolean savePreference)`
Sets a VM as the system-wide default VM, and notifies registered VM install change listeners of the change.
`void`
IVMInstallChangedListener.`vmAdded(IVMInstall vm)`
Notification that a VM has been created.
`void`
IVMInstallChangedListener.`vmRemoved(IVMInstall vm)`
Notification that a VM has been disposed.
Constructors in org.eclipse.jdt.launching with parameters of type IVMInstall
Modifier
Constructor
Description
``
`VMStandin(IVMInstall realVM)`
Construct a `VMStandin` instance based on the specified `IVMInstall`.
``
`VMStandin(IVMInstall sourceVM, String id)`
Constructs a copy of the specified VM with the given identifier.

## Uses of IVMInstall in org.eclipse.jdt.launching.environments

Methods in org.eclipse.jdt.launching.environments that return IVMInstall
Modifier and Type
Method
Description
`IVMInstall[]`
IExecutionEnvironment.`getCompatibleVMs()`
Returns a collection of VM installs compatible with this environment, possibly empty.
`IVMInstall`
IExecutionEnvironment.`getDefaultVM()`
Returns the VM that is used by default for this execution environment, or `null` if none.
Methods in org.eclipse.jdt.launching.environments with parameters of type IVMInstall
Modifier and Type
Method
Description
`CompatibleEnvironment[]`
IExecutionEnvironmentAnalyzerDelegate.`analyze(IVMInstall vm, org.eclipse.core.runtime.IProgressMonitor monitor)`
Analyzes the given vm install and returns a collection of compatible execution environments, possibly empty.
`IAccessRule[][]`
IAccessRuleParticipant.`getAccessRules(IExecutionEnvironment environment, IVMInstall vm, LibraryLocation[] libraries, IJavaProject project)`
Returns a collection of access rules to be applied to the specified VM libraries and execution environment in the context of the given project.
`IAccessRule[][]`
IExecutionEnvironment.`getAccessRules(IVMInstall vm, LibraryLocation[] libraries, IJavaProject project)`
Returns a collection of access rules to be applied to the specified VM libraries for this execution environment in the context of the given project.
`boolean`
IExecutionEnvironment.`isStrictlyCompatible(IVMInstall vm)`
Returns whether the specified VM install is strictly compatible with this environment.
`void`
IExecutionEnvironment.`setDefaultVM(IVMInstall vm)`
Sets the VM to use by default for this execution environment.