Spec-Zone.ru › OpenJDK 25

Класс ScriptEngineManager

java.lang.Object
javax.script.ScriptEngineManager
public class ScriptEngineManager extends Object
ScriptEngineManager реализует механизм обнаружения и создания экземпляров классов ScriptEngine, а также поддерживает коллекцию пар «ключ/значение», хранящую состояние, общее для всех движков, созданных диспетчером. Этот класс использует механизм поставщиков служб, описанный в классе ServiceLoader, для перечисления всех реализаций ScriptEngineFactory.

ScriptEngineManager предоставляет метод для получения списка всех этих фабрик, а также вспомогательные методы для поиска фабрик по имени языка, расширению файла и типу MIME.

Bindings пар «ключ/значение», называемая «глобальной областью» и поддерживаемая диспетчером, доступна всем экземплярам ScriptEngine, созданным ScriptEngineManager. Значения в Bindings обычно доступны во всех сценариях.

Начиная с:
1.6

Краткое описание конструкторов

Конструктор Описание
ScriptEngineManager()
Вызов этого конструктора эквивалентен вызову ScriptEngineManager(Thread.currentThread().getContextClassLoader()).
ScriptEngineManager(ClassLoader loader)
Этот конструктор загружает реализации ScriptEngineFactory, доступные указанному ClassLoader, используя механизм поставщиков служб.

Если loader равен null, загружаются фабрики скриптовых движков, входящие в состав платформы.

Краткое описание методов

Модификатор и тип Метод Описание
Object get(String key)
Возвращает значение для указанного ключа в глобальной области
Bindings getBindings()
getBindings возвращает значение поля globalScope.
ScriptEngine getEngineByExtension(String extension)
Ищет и создаёт ScriptEngine для указанного расширения.
ScriptEngine getEngineByMimeType(String mimeType)
Ищет и создаёт ScriptEngine для указанного типа MIME.
ScriptEngine getEngineByName(String shortName)
Ищет и создаёт ScriptEngine для указанного имени.
List<ScriptEngineFactory> getEngineFactories()
Возвращает список, элементы которого являются экземплярами всех классов ScriptEngineFactory, обнаруженных механизмом обнаружения.
void put(String key, Object value)
Устанавливает указанную пару «ключ/значение» в глобальной области.
void registerEngineExtension(String extension, ScriptEngineFactory factory)
Регистрирует ScriptEngineFactory для обработки расширения.
void registerEngineMimeType(String type, ScriptEngineFactory factory)
Регистрирует ScriptEngineFactory для обработки типа MIME.
void registerEngineName(String name, ScriptEngineFactory factory)
Регистрирует ScriptEngineFactory для обработки имени языка.
void setBindings(Bindings bindings)
setBindings сохраняет указанное Bindings в поле globalScope.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

ScriptEngineManager

public ScriptEngineManager()
Вызов этого конструктора эквивалентен вызову ScriptEngineManager(Thread.currentThread().getContextClassLoader()).
См. также:
  • Thread.getContextClassLoader()

ScriptEngineManager

public ScriptEngineManager(ClassLoader loader)
Этот конструктор загружает реализации ScriptEngineFactory, доступные указанному ClassLoader, используя механизм поставщиков служб.

Если loader равен null, загружаются фабрики скриптовых движков, входящие в состав платформы.
Параметры:
loader — ClassLoader, используемый для обнаружения фабрик скриптовых движков.

Подробное описание методов

setBindings

public void setBindings(Bindings bindings)
setBindings сохраняет указанное Bindings в поле globalScope. ScriptEngineManager задаёт этот Bindings в качестве глобальных привязок для объектов ScriptEngine, созданных им.
Параметры:
bindings — указанный Bindings
Исключения:
IllegalArgumentException — если bindings равен null.

getBindings

public Bindings getBindings()
getBindings возвращает значение поля globalScope. ScriptEngineManager задаёт этот Bindings в качестве глобальных привязок для объектов ScriptEngine, созданных им.
Возвращает:
Поле globalScope.

put

public void put(String key, Object value)
Устанавливает указанную пару «ключ/значение» в глобальной области.
Параметры:
key — ключ для установки
value — значение для установки.
Исключения:
NullPointerException — если key равен null.
IllegalArgumentException — если key — пустая строка.

get

public Object get(String key)
Возвращает значение для указанного ключа в глобальной области
Параметры:
key — ключ, значение которого нужно вернуть.
Возвращает:
Значение для указанного ключа.

getEngineByName

public ScriptEngine getEngineByName(String shortName)
Ищет и создаёт ScriptEngine для указанного имени. Сначала алгоритм ищет ScriptEngineFactory, зарегистрированный в качестве обработчика указанного имени с помощью метода registerEngineName.

Если такой обработчик не найден, выполняется поиск среди экземпляров ScriptEngineFactory, сохранённых конструктором, в попытке найти экземпляр с указанным именем. Если ScriptEngineFactory найден одним из этих способов, он используется для создания экземпляра ScriptEngine.
Параметры:
shortName — краткое имя реализации ScriptEngine, возвращаемое методом getNames её ScriptEngineFactory.
Возвращает:
ScriptEngine, созданный фабрикой, найденной при поиске. Возвращает null, если такая фабрика не найдена. ScriptEngineManager задаёт собственный globalScope Bindings в качестве GLOBAL_SCOPE Bindings для вновь созданного ScriptEngine.
Исключения:
NullPointerException — если shortName равен null.

getEngineByExtension

public ScriptEngine getEngineByExtension(String extension)
Ищет и создаёт ScriptEngine для указанного расширения. Используется алгоритм метода getEngineByName, за исключением того, что поиск начинается с проверки наличия ScriptEngineFactory, зарегистрированного для обработки указанного расширения с помощью registerEngineExtension.
Параметры:
extension — указанное расширение
Возвращает:
Движок для обработки сценариев с этим расширением. Возвращает null, если такой движок не найден.
Исключения:
NullPointerException — если extension равен null.

getEngineByMimeType

public ScriptEngine getEngineByMimeType(String mimeType)
Ищет и создаёт ScriptEngine для указанного типа MIME. Используется алгоритм метода getEngineByName, за исключением того, что поиск начинается с проверки наличия ScriptEngineFactory, зарегистрированного для обработки указанного типа MIME с помощью registerEngineMimeType.
Параметры:
mimeType — указанный тип MIME
Возвращает:
Движок для обработки сценариев с этим типом MIME. Возвращает null, если такой движок не найден.
Исключения:
NullPointerException — если mimeType равен null.

getEngineFactories

public List<ScriptEngineFactory> getEngineFactories()
Возвращает список, элементы которого являются экземплярами всех классов ScriptEngineFactory, обнаруженных механизмом обнаружения.
Возвращает:
Список всех обнаруженных ScriptEngineFactory.

registerEngineName

public void registerEngineName(String name, ScriptEngineFactory factory)
Регистрирует ScriptEngineFactory для обработки имени языка. Переопределяет любую подобную связь, найденную с помощью механизма обнаружения.
Параметры:
name — имя, связываемое с ScriptEngineFactory.
factory — класс, связываемый с указанным именем.
Исключения:
NullPointerException — если любой из параметров равен null.

registerEngineMimeType

public void registerEngineMimeType(String type, ScriptEngineFactory factory)
Регистрирует ScriptEngineFactory для обработки типа MIME. Переопределяет любую подобную связь, найденную с помощью механизма обнаружения.
Параметры:
type — тип MIME, связываемый с ScriptEngineFactory.
factory — класс, связываемый с указанным типом MIME.
Исключения:
NullPointerException — если любой из параметров равен null.

registerEngineExtension

public void registerEngineExtension(String extension, ScriptEngineFactory factory)
Регистрирует ScriptEngineFactory для обработки расширения. Переопределяет любую подобную связь, найденную с помощью механизма обнаружения.
Параметры:
extension — тип расширения, связываемый с ScriptEngineFactory.
factory — класс, связываемый с указанным расширением.
Исключения:
NullPointerException — если любой из параметров равен null.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по 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/ScriptEngineManager.html

Spec-Zone.ru

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