首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >名为"nashorn“的ScriptEngine为空。

名为"nashorn“的ScriptEngine为空。
EN

Stack Overflow用户
提问于 2016-05-18 12:46:03
回答 1查看 2.4K关注 0票数 0

我正在尝试创建名为ScriptEngine"nashorn"

代码语言:javascript
复制
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("nashorn");
if (engine == null) {
     System.out.println("engine == null");
} 

但我总是

代码语言:javascript
复制
engine == null

为什么会发生这种情况?医生说:

Nashorn引擎是与(JDK)捆绑在一起的默认ECMAScript (JavaScript)引擎。

这意味着Nashorn引擎是默认引擎,必须存在于JDK中,不是吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-18 12:54:13

这里有一个小片段来列出所有支持的引擎。

代码语言:javascript
复制
public class Script {
    public static void main(String[] args) throws ScriptException {
        new ScriptEngineManager().getEngineByName("js")
           .eval("print('Hello from Java\\n');");
        for (ScriptEngineFactory se : new ScriptEngineManager().getEngineFactories()) {
            System.out.println("se = " + se.getEngineName());
            System.out.println("se = " + se.getEngineVersion());
            System.out.println("se = " + se.getLanguageName());
            System.out.println("se = " + se.getLanguageVersion());
            System.out.println("se = " + se.getNames());
        }
    }
}

Java6 (1.6.0_43)

代码语言:javascript
复制
Hello from Java
se = Mozilla Rhino
se = 1.6 release 2
se = ECMAScript
se = 1.6
se = [js, rhino, JavaScript, javascript, ECMAScript, ecmascript]

Java 7 (1.7.0_40)

代码语言:javascript
复制
Hello from Java                                                  
se = Mozilla Rhino                                               
se = 1.7 release 3 PRERELEASE                                    
se = ECMAScript                                                  
se = 1.8                                                         
se = [js, rhino, JavaScript, javascript, ECMAScript, ecmascript] 

Java 8 (1.8.0_74)

代码语言:javascript
复制
Hello from Java

se = Oracle Nashorn
se = 1.8.0_74
se = ECMAScript
se = ECMA - 262 Edition 5.1
se = [nashorn, Nashorn, js, JS, JavaScript, javascript, ECMAScript, ecmascript]
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37300083

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档