Пакет javax.script
API для скриптов состоит из интерфейсов и классов, которые определяют Java TM движки для скриптов и предоставляют фреймворк для их использования в приложениях Java.
См.: Описание
| Интерфейс | Описание |
|---|---|
| Bindings | Сопоставление пар ключ/значение, все ключи которых являются |
| Compilable | Необязательный интерфейс, реализуемый ScriptEngines, методы которого компилируют скрипты в форму, которую можно выполнять повторно без повторной компиляции. |
| Invocable | Необязательный интерфейс, реализуемый ScriptEngines, методы которого позволяют вызывать процедуры в скриптах, которые были ранее выполнены. |
| ScriptContext | Интерфейс, реализующие классы которого используются для подключения Script Engines к объектам, таким как scoped Bindings, в приложениях-хостах. |
| ScriptEngine |
|
| ScriptEngineFactory |
|
| Класс | Описание |
|---|---|
| AbstractScriptEngine | Предоставляет стандартную реализацию для нескольких вариантов метода |
| CompiledScript | Расширяется классами, которые хранят результаты компиляции. |
| ScriptEngineManager |
|
| SimpleBindings | Простая реализация Bindings, основанная на |
| SimpleScriptContext | Простая реализация ScriptContext. |
| Исключение | Описание |
|---|---|
| ScriptException | Общий класс |
Описание пакета javax.script
API для скриптов состоит из интерфейсов и классов, которые определяют Java TM движки для скриптов и предоставляют фреймворк для их использования в приложениях Java. Этот API предназначен для использования программистами приложений, которые хотят выполнять программы, написанные на языках сценариев, в своих приложениях Java. Программы на языке сценариев обычно предоставляются конечными пользователями приложений.
Основные функциональные области пакета javax.script включают:
-
Выполнение скриптов: Скрипты представляют собой потоки символов, используемые в качестве источников программ, выполняемых движками скриптов. Выполнение скриптов использует метод
evalклассаScriptEngineи методы интерфейсаInvocable. -
Связывание: Эта возможность позволяет предоставлять доступ к объектам Java программам на языке сценариев в виде именованных переменных. Для этой цели используются классы
BindingsиScriptContext. -
Компиляция: Эта функциональность позволяет сохранить промежуточный код, генерируемый передней частью движка скриптов, и выполнять его повторно. Это выгодно для приложений, которые выполняют один и тот же скрипт несколько раз. Эти приложения могут получить эффективность, поскольку передние части движков должны выполнять скрипт только один раз на скрипт, а не один раз на каждое выполнение скрипта. Обратите внимание, что эта функциональность является необязательной, и движки скриптов могут ее не реализовывать. Звонящие должны проверять доступность интерфейса
Compilableс помощью проверки instanceof. -
Вызов: Эта функциональность позволяет повторно использовать промежуточный код, сгенерированный передней частью движка скриптов. В то время как компиляция позволяет повторно выполнять целые скрипты, представленные промежуточным кодом, функциональность вызова позволяет повторно выполнять отдельные процедуры/методы в скриптах. Как и в случае с компиляцией, не все движки скриптов обязаны предоставлять эту возможность. Звонящий должен проверить доступность
Invocable. -
Обнаружение движка скриптов и метаданные: Приложения, написанные для API для скриптов, могут иметь особые требования к движкам скриптов. Некоторые могут потребовать определенный язык сценариев и/или версию, в то время как другие могут потребовать определенный движок реализации и/или версию. Движки скриптов упаковываются определенным образом, чтобы движки можно было обнаружить во время выполнения и получить информацию о них. Механизм обнаружения движка основан на механизме обнаружения служб, описанном в спецификации файлов JAR. Классы, реализующие движок скриптов, упаковываются в файлы JAR, которые включают текстовый ресурс под названием META-INF/services/javax.script.ScriptEngineFactory. Этот ресурс должен содержать строку для каждого
ScriptEngineFactory, который упакован в файле JAR.ScriptEngineManagerвключает методgetEngineFactoriesдля получения всех экземпляровScriptEngineFactory, обнаруженных с помощью этого механизма.ScriptEngineFactoryимеет методы для запроса атрибутов движка скриптов.
- С момента:
- 1.6
© 1993, 2020, 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.