我在 Java 11 中使用 Nashorn JavaScript 引擎,它运行良好,但很快就会被弃用。我尝试过 GraalVM,我发现它更糟糕,因为执行一个简单的表达式(例如 2+3)需要 13-14 秒。我是否可以使用其他替代方案,或者我应该尝试使用其他方法(如果有)使用 GraalVM?ScriptEngineManager mgr = new ScriptEngineManager();ScriptEngine engine = mgr.getEngineByName("javascript");engine.eval("2+3");
2 回答
qq_遁去的一_1
TA贡献1725条经验 获得超7个赞
更新(2022 年 6 月):
截至2022年,J2V8似乎也维护得很差。
最好把目光投向Javet
如果有人仍然认为这个问题相关,那么 Nashorn/Rhino 脚本引擎的一个可行的、仍然积极维护的替代方案是JVM 的J2V8绑定。
通过 JNI 内置多平台支持
尽管其机制与 API 略有不同ScriptEngine
,但性能(如预期)更好。而且您不必处理奇怪的副作用,例如由于滥用 API 导致的意外类加载。
我自己过去曾成功地使用过它。
添加回答
举报
0/150
提交
取消