Spec-Zone.ru › OpenJDK 21

Пакет jdk.jshell.spi

package jdk.jshell.spi
Определяет интерфейс поставщика сервисов для подключаемых движков выполнения JShell. Ядро JShell отслеживает и компилирует фрагменты кода, затем отправляет их (представленные в обёртке класса) движку выполнения для загрузки и, в случае исполняемых фрагментов, для выполнения. Реализация JShell включает в себя стандартный движок выполнения (в настоящее время удалённый процесс, управляемый JDI). Реализовав интерфейс ExecutionControl и его порождающий класс, а также реализацию интерфейса ExecutionControlProvider и установив его с помощью JShell.Builder.executionEngine(String), можно использовать другие движки выполнения. Где переданная строка является ExecutionControl спецификацией.

ExecutionControl спецификация представляет собой ExecutionControlProvider имя, за которым необязательно следует спецификация параметра. Синтаксис спецификации:

 spec   := name : params
        | name
 name   := identifier
 params := param , params
        | param
        |
 param  := identifier ( value )
 
Где 'name' — это ExecutionControlProvider имя. Где 'param' — это ключ из карты ExecutionControlProvider.defaultParameters() и значение в скобках; см., например, JdiExecutionControlProvider. Где 'identifier' — последовательность символов, являющихся частью идентификатора Java из базовой многоязычной плоскости.

Например:

  • local
  • jdi:hostname(localhost)
  • failover:1(jdi),2(jdi:launch(true),timeout(3000)),3(local)
Since:
9
See Also:
  • for execution implementation support
Пакет Описание
jdk.jshell
Предоставляет интерфейсы для создания инструментов, таких как цикл Read-Eval-Print Loop (REPL), которые интерактивно вычисляют «фрагменты» кода языка программирования Java.
jdk.jshell.execution
Предоставляет поддержку реализации для построения движков выполнения JShell.
jdk.jshell.tool
Предоставляет механизм запуска экземпляра инструмента Java shell.
Класс Описание
ExecutionControl
Этот интерфейс определяет функциональность, которая должна быть предоставлена для реализации подключаемого движка выполнения JShell.
ExecutionControl.ClassBytecodes
Объединяет имя класса с байткодами класса.
ExecutionControl.ClassInstallException
Установка класса (загрузка или переопределение) столкнулась с проблемой.
ExecutionControl.EngineTerminationException
Случилось непредвиденное завершение работы движка выполнения.
ExecutionControl.ExecutionControlException
Абстрактный базовый класс всех ExecutionControl исключений.
ExecutionControl.InternalException
Произошла внутренняя проблема.
ExecutionControl.NotImplementedException
Команда не реализована.
ExecutionControl.ResolutionException
Исключение, указывающее на то, что DeclarationSnippet с неразрешенными ссылками было обнаружено.
ExecutionControl.RunException
Абстрактный базовый класс исключений, специфичных для выполнения пользовательского кода.
ExecutionControl.StoppedException
Исключение, указывающее на то, что ExecutionControl.invoke(java.lang.String, java.lang.String) (или теоретически ExecutionControl.varValue(java.lang.String, java.lang.String)) было прервано ExecutionControl.stop().
ExecutionControl.UserException
Произошло «нормальное» пользовательское исключение.
ExecutionControlProvider
Поставщик, используемый JShell для генерации движка выполнения, необходимого для вычисления фрагментов кода.
ExecutionEnv
Функциональность, предоставляемая подключаемому движку выполнения JShell.
SPIResolutionException
Построение и выброс этого исключения встроены в код, сгенерированный реализацией ядра JShell таким образом, что при выполнении RECOVERABLE_DEFINED пользовательского метода это исключение выбрасывается.

© 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/spi/package-summary.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API