Класс JdiExecutionControl
java.lang.Object
jdk.jshell.execution.StreamingExecutionControl
jdk.jshell.execution.JdiExecutionControl
- Все реализованные интерфейсы:
-
AutoCloseable,ExecutionControl
- Прямые известные подклассы:
JdiDefaultExecutionControl
public abstract class JdiExecutionControl extends StreamingExecutionControl implements ExecutionControl
Абстрактная реализация JDI интерфейса
ExecutionControl.- С:
- 9
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в интерфейсе jdk.jshell.spi.ExecutionControl
ExecutionControl.ClassBytecodes, ExecutionControl.ClassInstallException, ExecutionControl.EngineTerminationException, ExecutionControl.ExecutionControlException, ExecutionControl.InternalException, ExecutionControl.NotImplementedException, ExecutionControl.ResolutionException, ExecutionControl.RunException, ExecutionControl.StoppedException, ExecutionControl.UserException
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создать экземпляр. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
redefine |
Переопределить указанные классы. |
protected ReferenceType |
referenceType |
Возвращает JDI ReferenceType, соответствующий указанному имени класса. |
protected abstract VirtualMachine |
vm() |
Возвращает экземпляр JDI VirtualMachine. |
Методы, объявленные в классе jdk.jshell.execution.StreamingExecutionControl
addToClasspath, close, extensionCommand, invoke, load, stop, varValue
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе jdk.jshell.spi.ExecutionControl
addToClasspath, close, extensionCommand, invoke, load, stop, varValue
Подробное описание конструкторов
JdiExecutionControl
protected JdiExecutionControl(ObjectOutput out, ObjectInput in)
Создать экземпляр.
- Параметры:
-
out- вывод от удалённого агента -
in- вход для удалённого агента
Подробное описание методов
vm
protected abstract VirtualMachine vm() throws ExecutionControl.EngineTerminationException
Возвращает экземпляр JDI
VirtualMachine.- Возвращает:
- виртуальную машину
- Исключения:
-
ExecutionControl.EngineTerminationException- если ВМ мертва/отсоединена
redefine
public void redefine(ExecutionControl.ClassBytecodes[] cbcs) throws ExecutionControl.ClassInstallException, ExecutionControl.EngineTerminationException
Переопределить указанные классы. Где 'переопределить' - это, как в JDI и JVMTI, замена классов на месте (сохранение идентичности класса) - то есть, существующие ссылки на класс не нужно перекомпилировать. Эта реализация использует JDI
VirtualMachine.redefineClasses(java.util.Map). Она будет неуспешной, если сигнатура класса изменилась (см. спецификацию JDI). Ядро JShell адаптируется к неудачным переопределениям.- Определено в:
-
redefineв интерфейсеExecutionControl - Параметры:
-
cbcs- имя класса и байткоды для переопределения - Исключения:
-
ExecutionControl.ClassInstallException- ошибка при переопределении классов, некоторые или все не были переопределены -
ExecutionControl.EngineTerminationException- движок выполнения завершил работу
referenceType
protected ReferenceType referenceType(VirtualMachine vm, String name)
Возвращает JDI
ReferenceType, соответствующий указанному имени класса.- Параметры:
-
vm- текущая JDIVirtualMachine, возвращённая методомvm() -
name- имя класса для поиска - Возвращает:
- соответствующий
ReferenceType
© 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://download.java.net/java/early_access/jdk24/docs/api/jdk.jshell/jdk/jshell/execution/JdiExecutionControl.html