Cannot invoke “javax.script.ScriptEngine.eval(String)“ because “engine“ is null
报错
Cannot invoke “javax.script.ScriptEngine.eval(String)” because “engine” is null
原因
我在使用一个验证码生成的工具asy-captcha库的验证码接口遇到javax.script.ScriptEngine.eval调用失败的问题,因为engine为null。
dk8中内置的JavaScript引擎 nashorn 被移除,导致报错Cannot invoke “javax.script.ScriptEngine.eval(String)” because “engine” is null
脚本引擎执行脚本语句报错,因为执行引擎为空。
解决方法
- 降低jdk版本为1.8
- 在pom文件添加JavaScript引擎 nashorn 依赖,重新启动项目即可
<dependency>
<groupId>org.openjdk.nashorn</groupId>
<artifactId>nashorn-core</artifactId>
<version>15.4</version>
</dependency>
如果我的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力