jdk在11开始就标注要取消NashornScriptEngineFactory类。在17中删除。给出的理由是因为jdk中维护不方便。所以我们可以在maven中找到对应的开发包。
// https://mvnrepository.com/artifact/org.openjdk.nashorn/nashorn-core
implementation group: 'org.openjdk.nashorn', name: 'nashorn-core', version: '15.3'
引入后代码加入
ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
scriptEngineManager.registerEngineName("test",new NashornScriptEngineFactory());
ScriptEngine engine = scriptEngineManager.getEngineByName("js");