Interface LaunchingConnector

All Superinterfaces:
Connector
public interface LaunchingConnector extends Connector
A connector which can launch a target VM before connecting to it.
Since:
1.3

Nested Class Summary

Method Summary

Modifier and Type Method Description
VirtualMachine launch(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 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 the Process object returned by VirtualMachine.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.

© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/jdk.jdi/com/sun/jdi/connect/LaunchingConnector.html