Класс 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-core разработан для адаптации к неудачному переопределению.- Определено в:
-
redefineв интерфейсеExecutionControl - Параметры:
-
cbcs- имя класса и байткоды для переопределения - Исключения:
-
ExecutionControl.ClassInstallException- произошла ошибка при переопределении классов, некоторые или все не были переопределены -
ExecutionControl.EngineTerminationException- движок выполнения завершился
referenceType
protected ReferenceType referenceType(VirtualMachine vm, String name)
Возвращает JDI
ReferenceType соответствующий указанному имени класса.- Параметры:
-
vm- текущая JDIVirtualMachine, возвращеннаяvm() -
name- имя класса для поиска - Возвращает:
- соответствующий
ReferenceType
© 1993, 2023, 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/21/docs/api/jdk.jshell/jdk/jshell/execution/JdiExecutionControl.html