public interface ScriptEngine
ScriptEngine是基本接口,其方法必须在本规范的每个实现中都具有完全的功能。
| Modifier and Type | Field and Description |
|---|---|
static String |
ARGV
用于将位置参数数组传递给脚本的命名值的保留键。
|
static String |
ENGINE
作为
ScriptEngine实现的名称的命名值的保留键。
|
static String |
ENGINE_VERSION
保留键指定值标识的版本
ScriptEngine实施。
|
static String |
FILENAME
作为正在执行的文件的名称的命名值的保留键。
|
static String |
LANGUAGE
作为实现支持的脚本语言的全名的命名值的保留键。
|
static String |
LANGUAGE_VERSION
用于标识实现支持的脚本语言版本的命名值的保留键。
|
static String |
NAME
用于标识脚本语言的短名称的命名值的保留键。
|
| Modifier and Type | Method and Description |
|---|---|
Bindings |
createBindings()
返回未初始化的
Bindings 。
|
Object |
eval(Reader reader)
与
eval(String)相同,只是脚本的来源以
Reader形式提供
|
Object |
eval(Reader reader, Bindings n)
与
eval(String, Bindings)相同,只是脚本的来源以
Reader形式提供。
|
Object |
eval(Reader reader, ScriptContext context)
与
eval(String, ScriptContext)相同,其中脚本的来源是从
Reader读取的。
|
Object |
eval(String script)
执行指定的脚本。
|
Object |
eval(String script, Bindings n)
执行使用该脚本
Bindings参数为
ENGINE_SCOPE
Bindings的的
ScriptEngine脚本执行期间。
|
Object |
eval(String script, ScriptContext context)
导致立即执行脚本,其脚本是作为第一个参数传递的String。
|
Object |
get(String key)
检索在此引擎状态下设置的值。
|
Bindings |
getBindings(int scope)
返回命名值的范围。
|
ScriptContext |
getContext()
返回默认
ScriptContext的的
ScriptEngine的Bindings,Reader和Writer被用于脚本执行时没有
ScriptContext指定。
|
ScriptEngineFactory |
getFactory()
为这个
ScriptEngine所属的课程返回一个
ScriptEngineFactory 。
|
void |
put(String key, Object value)
在ScriptEngine的状态下设置一个键/值对,可以创建一个Java语言绑定,以便在执行脚本时使用,或者以某种其他方式使用,具体取决于该键是否被保留。
|
void |
setBindings(Bindings bindings, int scope)
设置脚本使用的命名值的范围。
|
void |
setContext(ScriptContext context)
设置默认
ScriptContext的的
ScriptEngine的Bindings,Reader和Writer被用于脚本执行时没有
ScriptContext指定。
|
static final String ARGV
static final String FILENAME
static final String ENGINE
ScriptEngine实现的名称的命名值的保留键。
static final String ENGINE_VERSION
ScriptEngine实施。
static final String NAME
ScriptEngineManager来定位ScriptEngine与在一个给定的名称getEngineByName方法。
static final String LANGUAGE
static final String LANGUAGE_VERSION
Object eval(String script, ScriptContext context) throws ScriptException
script - 由脚本引擎执行的脚本。
context - A ScriptContext在不同范围ScriptContext公开属性集。
在本说明书中定义了示波器ScriptContext.GLOBAL_SCOPE和ScriptContext.ENGINE_SCOPE的含义。
ENGINE_SCOPE Bindings ScriptContext包含脚本变量与此脚本执行期间要使用的应用程序对象的绑定。
ScriptException - 脚本中是否发生错误。
ScriptEngines应该创建并抛出ScriptException包装器,以检查基础脚本实现抛出的检查异常。
NullPointerException - 如果任一参数为空。
Object eval(Reader reader, ScriptContext context) throws ScriptException
eval(String, ScriptContext)相同,其中脚本的来源是从
Reader读取的。
reader - 由脚本引擎执行的脚本的源。
context -
ScriptContext传递给脚本引擎。
ScriptException - 如果脚本中发生错误。
NullPointerException - 如果任一参数为空。
Object eval(String script) throws ScriptException
ScriptContext为ScriptEngine 。
script - 要执行的脚本语言源。
ScriptException - 如果脚本中发生错误。
NullPointerException - 如果参数为null。
Object eval(Reader reader) throws ScriptException
eval(String)相同,只是脚本的来源以
Reader形式提供
reader - 脚本的来源。
ScriptException - 如果脚本中发生错误。
NullPointerException - 如果参数为空。
Object eval(String script, Bindings n) throws ScriptException
Bindings参数为ENGINE_SCOPE Bindings的的ScriptEngine脚本执行期间。
该Reader , Writer和非ENGINE_SCOPE Bindings默认的ScriptContext被使用。
ENGINE_SCOPE Bindings的ScriptEngine没有改变,其映射不受脚本执行的影响。
script - 脚本的来源。
n -该
Bindings属性用于脚本执行。
ScriptException - 脚本中是否出现错误。
NullPointerException - 如果任一参数为空。
Object eval(Reader reader, Bindings n) throws ScriptException
eval(String, Bindings)相同,只是该脚本的来源以
Reader形式提供。
reader - 脚本的来源。
n -
Bindings的Bindings。
ScriptException - 如果发生错误。
NullPointerException - 如果任一参数为空。
void put(String key, Object value)
getBindings(ScriptContext.ENGINE_SCOPE).put相同的效果。
key - 要添加的命名值的名称
value - 要添加的命名值的值。
NullPointerException - 如果key为null。
IllegalArgumentException - 如果键为空。
Object get(String key)
setValue或状态的其他值ScriptEngine ,这取决于实现。
必须具有与getBindings(ScriptContext.ENGINE_SCOPE).get相同的效果
key - 要返回其值的键
NullPointerException - 如果key为空。
IllegalArgumentException - 如果键为空。
Bindings getBindings(int scope)
ScriptContext.GLOBAL_SCOPE - 表示全局范围的一组命名值。 如果这ScriptEngine通过创建ScriptEngineManager ,那么管理者将全球范围内绑定。 如果没有全局范围与此ScriptEngine null则可能是ScriptEngine ScriptContext.ENGINE_SCOPE -集表示此状态的指定值的ScriptEngine 。 这些值通常在使用相关键作为变量名称的脚本中可见。 ScriptContext所述的ScriptEngine 。 Bindings返回的情况下必须与那些由返回getBindings的方法ScriptContext打来电话为默认相应参数ScriptContext所述的ScriptEngine 。
scope - ScriptContext.ENGINE_SCOPE或ScriptContext.GLOBAL_SCOPE Bindings要返回的Bindings 。
ScriptContext的ScriptContext可能会定义其他范围。
如果ScriptContext默认的ScriptEngine定义了其他示波器,则可以将其中的任一个传递给相应的Bindings 。
Bindings与指定的范围。
IllegalArgumentException - 如果指定范围无效
void setBindings(Bindings bindings, int scope)
ScriptContext.ENGINE_SCOPE -指定的Bindings替换的引擎范围ScriptEngine 。 ScriptContext.GLOBAL_SCOPE - 指定的Bindings必须作为GLOBAL_SCOPE可见。 ScriptContext所述的ScriptEngine 。 setBindings的方法ScriptContext用的相应值scope上的默认ScriptContext所述的ScriptEngine 。
bindings -该
Bindings指定的范围。
scope - 指定的范围。
无论是ScriptContext.ENGINE_SCOPE , ScriptContext.GLOBAL_SCOPE ,或范围的其他任何有效的价值。
IllegalArgumentException - 范围无效
NullPointerException - 如果绑定为空,范围为
ScriptContext.ENGINE_SCOPE
Bindings createBindings()
Bindings 。
Bindings可以用来替换这个
ScriptEngine的状态。
ScriptContext getContext()
ScriptContext的的
ScriptEngine的Bindings,Reader和Writer被用于脚本执行时没有
ScriptContext指定。
ScriptContext的
ScriptEngine 。
void setContext(ScriptContext context)
ScriptContext的的
ScriptEngine的Bindings,Reader和Writer被用于脚本执行时没有
ScriptContext指定。
context - A
ScriptContext将替换
ScriptContext中的默认
ScriptEngine 。
NullPointerException - 如果上下文为空。
ScriptEngineFactory getFactory()
ScriptEngineFactory让全班这里面
ScriptEngine所属。
ScriptEngineFactory
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.