Класс JdiInitiator
java.lang.Object
jdk.jshell.execution.JdiInitiator
public class JdiInitiator extends Object
Настраивает подключение JDI, предоставляя полученную
VirtualMachine и Process, в которой работает удалённый агент.- С версии:
- 9
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected static interface |
JdiInitiator.ProcessStarted |
Обратный вызов, который следует выполнить при запуске удалённого процесса. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
JdiInitiator |
Запускает удалённый агент и устанавливает с ним подключение JDI. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Process |
process() |
Возвращает запущенный процесс. |
protected void |
runListenProcess |
Создаёт процесс, который подключится к указанному адресу. |
VirtualMachine |
vm() |
Возвращает полученный экземпляр VirtualMachine. |
Подробное описание конструкторов
JdiInitiator
public JdiInitiator(int port, List<String> remoteVMOptions, String remoteAgent, boolean isLaunch, String host, int timeout, Map<String,String> customConnectorArgs)
Запускает удалённый агент и устанавливает с ним подключение JDI.
- Параметры:
-
port— порт сокета для команд (не JDI) -
remoteVMOptions— любые параметры командной строки ВМ, запрошенные пользователем -
remoteAgent— полное имя класса удалённого агента для запуска -
isLaunch— выполняет ли JDI запуск? То есть используется LaunchingConnector; в противном случае мы запускаем явно и используем ListeningConnector -
host— явно заданное имя хоста; если значение равно null, используется обнаруженное имя хоста. Применяется только для режима прослушивания (!isLaunch) -
timeout— время ожидания запуска в миллисекундах. Если значение равно нулю или отрицательное, ожидание не выполняется, поэтому немедленно произойдёт тайм-аут, если запуск ещё не завершён. -
customConnectorArgs— пользовательские аргументы, передаваемые коннектору. Это аргументы JDI com.sun.jdi.connect.Connector. Аргументvmexecне поддерживается.
Подробное описание методов
vm
public VirtualMachine vm()
Возвращает полученный экземпляр
VirtualMachine.- Возвращает:
- виртуальную машину
process
public Process process()
Возвращает запущенный процесс.
- Возвращает:
- процесс удалённого агента
runListenProcess
protected void runListenProcess(String jdiAddress, int jshellControlPort, List<String> remoteVMOptions, JdiInitiator.ProcessStarted setupVM)
Создаёт процесс, который подключится к указанному адресу.
- Параметры:
-
jdiAddress— адрес, по которому сервер JDI ожидает подключения -
jshellControlPort— порт, к которому должен подключиться удалённый агент -
remoteVMOptions— параметры ВМ удалённого агента -
setupVM— обратный вызов, который следует вызвать после создания процесса удалённого агента. Обратный вызов настроитVirtualMachineJDI. - С версии:
- 22
© 1993, 2025, 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/25/docs/api/jdk.jshell/jdk/jshell/execution/JdiInitiator.html