我使用 Java 的 ScriptEngine 来执行 JavaScript 代码。我使用可调用接口(interface),这样我就可以将脚本代码用作实现 Java 接口(interface)的普通 Java 对象。
如果JavaScript代码
- 无效
- 不遵循接口(interface)(缺少方法、错误的返回类型、抛出异常等)
我在执行代码时收到来自 Rhino 的内部异常或 UndeclaredThrowableException。两者都是 RuntimeExceptions,不允许“捕获”。
有没有办法在执行前验证代码?或者我是否必须在这里打破规则并捕获 RuntimeExceptions?这对我有用,但最优雅的方法是什么?
最佳答案
Is there a way to validate the code before executing?
没有。 JavaScript 是松散类型的,没有接口(interface)的概念,并且是即时解释的。
在不设计自己的验证框架的情况下,您能做的最好的事情就是使用 JSLint 检查语法错误。 .
关于java - 验证 JavaScript 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2063684/