Interface LaunchingConnector
- All Superinterfaces:
Connector
A connector which can launch a target VM before connecting to it.
- Since:
- 1.3
-
Nested Class Summary
Nested classes/interfaces declared in interface com.sun.jdi.connect.Connector
Connector.Argument, Connector.BooleanArgument, Connector.IntegerArgument, Connector.SelectedArgument, Connector.StringArgument
-
Method Summary
Modifier and TypeMethodDescriptionlaunch
(Map<String, ? extends Connector.Argument> arguments) Launches an application and connects to its VM.Methods declared in interface com.sun.jdi.connect.Connector
defaultArguments, description, name, transport
-
Method Details
-
launch
VirtualMachine launch(Map<String, ? extends Connector.Argument> arguments) throws IOException, IllegalConnectorArgumentsException, VMStartException Launches an application and connects to its VM. Properties of the launch (possibly including options, main class, and arguments) are specified inarguments
. The argument map associates argument name strings to instances ofConnector.Argument
. The default argument map for a connector can be obtained throughConnector.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 the
Process
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
- when unable to launch. Specific exceptions are dependent on the Connector implementation in use.IllegalConnectorArgumentsException
- when one of the connector arguments is invalid.VMStartException
- when the VM was successfully launched, but terminated with an error before a connection could be established.
-