LaunchingConnector (Java SE 19 & JDK 19) (original) (raw)
All Superinterfaces:
[Connector](Connector.html "interface in com.sun.jdi.connect")
public interface LaunchingConnectorextends Connector
A connector which can launch a target VM before connecting to it.
Since:
1.3
Nested Class Summary
Method Summary
Launches an application and connects to its VM.
Method Details
launch
Launches an application and connects to its VM. Properties of the launch (possibly including options, main class, and arguments) are specified in
arguments
. The argument map associates argument name strings to instances of Connector.Argument. The default argument map for a connector can be obtained through Connector.defaultArguments(). Argument map values can be changed, but map entries should not be added or deleted.
A target VM launched by a launching connector is not guaranteed to be stable until after the VMStartEvent has been received.
Important note: If a target VM is launched through this funcctions, its output and error streams must be read as it executes. These streams are available through theProcess object returned byVirtualMachine.process(). If the streams are not periodically read, the target VM will stop executing when the buffers for these streams are filled.
Parameters:
arguments
- the argument map to be used in launching the VM.
Returns:
the VirtualMachine mirror of the target VM.
Throws:
[IOException](../../../../../java.base/java/io/IOException.html "class in java.io")
- when unable to launch. Specific exceptions are dependent on the Connector implementation in use.
[IllegalConnectorArgumentsException](IllegalConnectorArgumentsException.html "class in com.sun.jdi.connect")
- when one of the connector arguments is invalid.
[VMStartException](VMStartException.html "class in com.sun.jdi.connect")
- when the VM was successfully launched, but terminated with an error before a connection could be established.