我需要将一个Java 8项目转移到Java 17。
我可以解决大部分问题,但其中包含一个方法,我使用ScriptEngineManager来评估一个数学术语。
ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine e = mgr.getEngineByName("JavaScript");
String t = "5*7";
if (isMathTerm(t)) {
System.out.println(e.eval(t).toString());
}
在Java 8中它按照所需工作,但在Java 17中e
始终为null。
根据谷歌的说法,JavaScript引擎在Java 17中不再受支持。
由于项目的限制,我不能使用第三方库。
在Java 17中有没有适当的方法来处理这个问题?
Boann
的答案。 - user7294900