通过Java内置的JavaScript Nashorn引擎执行JavaScript代码
package com.xu.news.java8;
import java.util.List;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineFactory;
import javax.script.ScriptEngineManager;
public class Test {
public static void main(String[] args) throws Exception {
ScriptEngineManager manager = new ScriptEngineManager();
//[nashorn, Nashorn, js, JS, JavaScript, javascript, ECMAScript, ecmascript]
ScriptEngine engine = manager.getEngineByName( "JavaScript" );
List<ScriptEngineFactory> lists=manager.getEngineFactories();
lists.forEach(list->{System.out.println("JavaScript 引擎:" + list.getEngineName());});
System.out.println("JavaScript 引擎:"+engine.getClass().getName() );
Object result= engine.eval( "function fun() { return 1; }; fun() + 1;" );
System.out.println("结果:" + result );
}
}