Spec-Zone.ru › OpenJDK 25

Пакет javax.script

package javax.script

API для работы со сценариями состоит из интерфейсов и классов, определяющих движки сценариев Java и предоставляющих платформу для их использования в приложениях Java. Этот API предназначен для разработчиков приложений, которые хотят выполнять в своих приложениях Java программы, написанные на языках сценариев. Обычно программы на языках сценариев предоставляются конечными пользователями приложений.

Основные области функциональности пакета javax.script включают

  1. Выполнение сценариев: Сценарии — это потоки символов, используемые в качестве исходных данных для программ, выполняемых движками сценариев. Для выполнения сценариев используются методы eval интерфейса ScriptEngine и методы интерфейса Invocable.

  2. Привязка: Эта возможность позволяет предоставлять объекты Java программам сценариев в виде именованных переменных. Для этой цели используются классы Bindings и ScriptContext.

  3. Компиляция: Эта функциональность позволяет сохранять промежуточный код, созданный фронтендом движка сценариев, и многократно выполнять его. Это полезно приложениям, выполняющим один и тот же сценарий несколько раз. Такие приложения могут работать эффективнее, поскольку фронтендам движков достаточно выполнить обработку каждого сценария один раз, а не при каждом его выполнении. Обратите внимание, что эта функциональность необязательна, и движки сценариев могут не реализовывать её. Вызывающая сторона должна проверить доступность интерфейса Compilable с помощью проверки instanceof.

  4. Вызов: Эта функциональность позволяет повторно использовать промежуточный код, созданный фронтендом движка сценариев. Если компиляция позволяет повторно выполнять целые сценарии, представленные промежуточным кодом, то функциональность вызова позволяет повторно выполнять отдельные процедуры и методы в сценариях. Как и в случае с компиляцией, не все движки сценариев обязаны предоставлять эту возможность. Вызывающая сторона должна проверить доступность Invocable.

  5. Обнаружение движков сценариев: К приложениям, написанным с использованием API для работы со сценариями, могут предъявляться особые требования к движкам сценариев. Некоторым может требоваться определённый язык сценариев и/или его версия, другим — определённая реализация движка и/или её версия. Движки сценариев упаковываются установленным способом, чтобы их можно было обнаруживать во время выполнения и запрашивать их атрибуты. Механизм обнаружения движков основан на загрузке поставщиков служб, описанной в классе ServiceLoader. Класс ScriptEngineManager содержит метод getEngineFactories, возвращающий все экземпляры ScriptEngineFactory, обнаруженные с помощью этого механизма. ScriptEngineFactory содержит методы для получения атрибутов движка сценариев.

С версии:
1.6
Класс Описание
AbstractScriptEngine
Предоставляет стандартную реализацию для нескольких вариантов метода eval.
Bindings
Отображение пар «ключ/значение», все ключи которого имеют тип Strings.
Compilable
Необязательный интерфейс, реализуемый ScriptEngines, методы которого компилируют сценарии в форму, допускающую многократное выполнение без повторной компиляции.
CompiledScript
Базовый класс для классов, хранящих результаты компиляции.
Invocable
Необязательный интерфейс, реализуемый ScriptEngines, методы которого позволяют вызывать процедуры в ранее выполненных сценариях.
ScriptContext
Интерфейс, реализации которого используются для связи движков сценариев с объектами, например привязками с заданной областью видимости, в хост-приложениях.
ScriptEngine
ScriptEngine — это основной интерфейс, методы которого должны быть полностью функциональны в каждой реализации этой спецификации.
ScriptEngineFactory
ScriptEngineFactory используется для описания и создания экземпляров ScriptEngines.
ScriptEngineManager
ScriptEngineManager реализует механизм обнаружения и создания экземпляров классов ScriptEngine, а также поддерживает коллекцию пар «ключ/значение» для хранения состояния, общего для всех движков, созданных диспетчером.
ScriptException
Общий класс Exception для API работы со сценариями.
SimpleBindings
Простая реализация Bindings на основе HashMap или другого указанного Map.
SimpleScriptContext
Простая реализация ScriptContext.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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/java.scripting/javax/script/package-summary.html

Spec-Zone.ru

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