Module  java.scripting
软件包  javax.script

Class ScriptEngineManager



  • public class ScriptEngineManager
    extends Object
    ScriptEngineManagerScriptEngine类实现了一个发现和实例化机制,并且还维护了一组存储由管理器创建的所有引擎共享的状态的键/值对。 这个类使用说明的服务提供商机制ServiceLoader类枚举的所有实现ScriptEngineFactory

    ScriptEngineManager提供了一种返回所有这些工厂的列表的方法以及在语言名称,文件扩展名和MIME类型的基础上查找工厂的实用方法。

    键/值对的Bindings ,被管理员维护的“全局范围”可用于由ScriptEngine创建的ScriptEngineManager所有实例。 Bindings中的值通常在所有脚本中公开。

    从以下版本开始:
    1.6
    • 构造方法详细信息

      • ScriptEngineManager

        public ScriptEngineManager​()
        调用此构造函数的效果与调用 ScriptEngineManager(Thread.currentThread().getContextClassLoader())相同。
        另请参见:
        Thread.getContextClassLoader()
      • ScriptEngineManager

        public ScriptEngineManager​(ClassLoader loader)
        该构造函数使用服务提供者机制加载ScriptEngineFactory给给定的ClassLoader

        如果装载机是null ,则加载与该平台捆绑的脚本引擎工厂。
        参数
        loader - ClassLoader用于发现脚本引擎工厂。
    • 方法详细信息

      • setBindings

        public void setBindings​(Bindings bindings)
        setBindings存储指定BindingsglobalScope领域。 ScriptEngineManager将此Bindings设置为ScriptEngine创建的ScriptEngine对象的全局绑定。
        参数
        bindings - 指定的 Bindings
        异常
        IllegalArgumentException - 如果绑定为空。
      • getBindings

        public Bindings getBindings​()
        getBindings返回值为globalScope字段。 ScriptEngineManager将此Bindings设置为ScriptEngine创建的ScriptEngine对象的全局绑定。
        结果
        globalScope字段。
      • get

        public Object get​(String key)
        获取全局范围中指定键的值
        参数
        key - 要返回其值的键。
        结果
        指定键的值。
      • getEngineByName

        public ScriptEngine getEngineByName​(String shortName)
        查找并为给定的名称创建一个ScriptEngine 该算法的第一搜索ScriptEngineFactory已被注册为使用指定名称的处理程序registerEngineName方法。

        如果没有找到,则搜索由构造函数存储的一组ScriptEngineFactory实例,其中一个具有指定的名称。 如果通过任一方法找到一个ScriptEngineFactory ,则用于创建ScriptEngine实例。
        参数
        shortName -的的短名称ScriptEngine实施。 由其getNames方法返还其ScriptEngineFactory
        结果
        A 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 - 如果扩展名为null。
      • getEngineByMimeType

        public ScriptEngine getEngineByMimeType​(String mimeType)
        查找并为给定的MIME类型创建一个ScriptEngine 使用getEngineByName使用的算法,除了搜索开始,通过寻找一个ScriptEngineFactory注册以使用registerEngineMimeType处理给定的MIME类型。
        参数
        mimeType - 给定的MIME类型
        结果
        用这种mime类型处理脚本的引擎。 如果没有找到,返回null
        异常
        NullPointerException - 如果mimeType为空。
      • getEngineFactories

        public List<ScriptEngineFactory> getEngineFactories​()
        返回一个列表,其元素是发现机制找到的所有 ScriptEngineFactory类的实例。
        结果
        所有已发现的列表 ScriptEngineFactory s。
      • registerEngineName

        public void registerEngineName​(String name,
                                       ScriptEngineFactory factory)
        注册一个ScriptEngineFactory来处理一个语言名称。 覆盖使用发现机制找到的任何此类关联。
        参数
        name - 要与 ScriptEngineFactory相关联的 ScriptEngineFactory
        factory - 与给定名称关联的类。
        异常
        NullPointerException - 如果任何参数为空。
      • registerEngineMimeType

        public void registerEngineMimeType​(String type,
                                           ScriptEngineFactory factory)
        注册一个ScriptEngineFactory来处理一个MIME类型。 覆盖使用发现机制找到的任何此类关联。
        参数
        type - 要与 ScriptEngineFactory关联的MIME类型。
        factory - 与给定的MIME类型相关联的类。
        异常
        NullPointerException - 如果任何参数为空。
      • registerEngineExtension

        public void registerEngineExtension​(String extension,
                                            ScriptEngineFactory factory)
        注册一个ScriptEngineFactory来处理扩展。 覆盖使用发现机制找到的任何此类关联。
        参数
        extension - 与 ScriptEngineFactory关联的扩展类型。
        factory - 与给定扩展名关联的类。
        异常
        NullPointerException - 如果任何参数为空。