我试图使用JEXL2.1.1和脚本动态地执行一个函数。函数是由我定义的,它引发一个自定义错误。
JEXL似乎捕获了异常,但没有传播它,只显示它。我真的需要知道异常何时发生,因为这是一个关键错误,我希望我的程序退出。
我试着把静音模式设置为false。我understand在这种模式下,JEXL应该抛出一个JEXLException,但在我的情况下并非如此。我还从JEXL网站了解到:
JexlException是以“非沉默”模式抛出的,但是由于它们是RuntimeException,所以用户代码应该在最合适的地方捕获它们。
我检查了一下,没有抛出RuntimeException。JEXL只记录错误,(在我的例子中)返回false (方法返回布尔值)。
我如何才能强迫JEXL抛出错误(我的错误或JEXLException,没关系)?
发布于 2014-01-22 14:50:07
看来我也得设定严格的模式了。
JexlEngine jexl = new JexlEngine();
jexl.setSilent(false);
jexl.setStrict(true);我不确定沉默模式是否真的有必要。
https://stackoverflow.com/questions/21277714
复制相似问题