如何使用 Nashorn 在 Java8 中执行 JavaScript 文件
How to execute JavaScript file in Java8 using Nashorn
我想在 Java class 中调用 Java 脚本,但无法找到正确的方法。我在某处读到它可以使用 Nashorn 完成。谁能告诉我确切的方法。
您可以使用 "ScriptEngineManager" 调用 JavaScript,如下所示。
ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
ScriptEngine engine = scriptEngineManager.getEngineByName("nashorn");
try {
engine.eval(new FileReader("src\demo.js"));
Invocable invocable = (Invocable)engine;
Object result = invocable.invokeFunction("fun1", "User");
System.out.println(result);
} catch (ScriptException e) {
e.printStackTrace();
}
你的 JS 文件 demo.js 将如下所示。
var fun1 = function(name){
print('Hi,'+name);
return "Greeting from javascript";
}
我想在 Java class 中调用 Java 脚本,但无法找到正确的方法。我在某处读到它可以使用 Nashorn 完成。谁能告诉我确切的方法。
您可以使用 "ScriptEngineManager" 调用 JavaScript,如下所示。
ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
ScriptEngine engine = scriptEngineManager.getEngineByName("nashorn");
try {
engine.eval(new FileReader("src\demo.js"));
Invocable invocable = (Invocable)engine;
Object result = invocable.invokeFunction("fun1", "User");
System.out.println(result);
} catch (ScriptException e) {
e.printStackTrace();
}
你的 JS 文件 demo.js 将如下所示。
var fun1 = function(name){
print('Hi,'+name);
return "Greeting from javascript";
}