# Uses of Interface
com.sun.jdi.VirtualMachine

Packages that use VirtualMachine
Package
Description
com.sun.jdi
This is the core package of the Java Debug Interface (JDI), it defines mirrors for values, types, and the target VirtualMachine itself - as well bootstrapping facilities.
com.sun.jdi.connect
This package defines connections between the virtual machine using the JDI and the target virtual machine.
jdk.jshell.execution
Provides implementation support for building JShell execution engines.

## Uses of VirtualMachine in com.sun.jdi

Subinterfaces of VirtualMachine in com.sun.jdi
Modifier and Type
Interface
Description
`interface`
`PathSearchingVirtualMachine`
A virtual machine which searches for classes through paths
Methods in com.sun.jdi that return VirtualMachine
Modifier and Type
Method
Description
`VirtualMachine`
VirtualMachineManager.`createVirtualMachine(Connection connection)`
Creates a new virtual machine.
`VirtualMachine`
VirtualMachineManager.`createVirtualMachine(Connection connection, Process process)`
Create a virtual machine mirror for a target VM.
`VirtualMachine`
Mirror.`virtualMachine()`
Gets the VirtualMachine to which this Mirror belongs.
Methods in com.sun.jdi that return types with arguments of type VirtualMachine
Modifier and Type
Method
Description
`List<VirtualMachine>`
VirtualMachineManager.`connectedVirtualMachines()`
Lists all target VMs which are connected to the debugger.

## Uses of VirtualMachine in com.sun.jdi.connect

Methods in com.sun.jdi.connect that return VirtualMachine
Modifier and Type
Method
Description
`VirtualMachine`
ListeningConnector.`accept(Map<String, ? extends Connector.Argument> arguments)`
Waits for a target VM to attach to this connector.
`VirtualMachine`
AttachingConnector.`attach(Map<String, ? extends Connector.Argument> arguments)`
Attaches to a running application and returns a mirror of its VM.
`VirtualMachine`
LaunchingConnector.`launch(Map<String, ? extends Connector.Argument> arguments)`
Launches an application and connects to its VM.

## Uses of VirtualMachine in jdk.jshell.execution

Methods in jdk.jshell.execution that return VirtualMachine
Modifier and Type
Method
Description
`VirtualMachine`
JdiDefaultExecutionControl.JdiStarter.TargetDescription.`vm()`
Returns the value of the `vm` record component.
`protected VirtualMachine`
JdiDefaultExecutionControl.`vm()`
`protected abstract VirtualMachine`
JdiExecutionControl.`vm()`
Returns the JDI `VirtualMachine` instance.
`VirtualMachine`
JdiInitiator.`vm()`
Returns the resulting `VirtualMachine` instance.
Methods in jdk.jshell.execution with parameters of type VirtualMachine
Modifier and Type
Method
Description
`static void`
Util.`detectJdiExitEvent(VirtualMachine vm, Consumer<String> unbiddenExitHandler)`
Monitor the JDI event stream for `VMDeathEvent` and `VMDisconnectEvent`.
`protected ReferenceType`
JdiExecutionControl.`referenceType(VirtualMachine vm, String name)`
Returns the JDI `ReferenceType` corresponding to the specified class name.
Constructors in jdk.jshell.execution with parameters of type VirtualMachine
Modifier
Constructor
Description
``
`TargetDescription(VirtualMachine vm, Process process)`
Creates an instance of a `TargetDescription` record class.