0

我正在尝试使用 JEXL 2.1.1 和脚本动态执行一个函数。该函数由我定义,它会引发自定义错误。

似乎 JEXL 捕获了异常,但不传播它,只显示它。我真的需要知道异常何时发生,因为这是一个严重错误,我希望我的程序退出。

我尝试将静音模式设置为 false。我知道在这种模式下,JEXL 应该抛出 JEXLException,但在我的情况下不是这样。我也从 JEXL 网站了解到:

JexlException 在“非静默”模式下抛出,但由于这些是 RuntimeException,用户代码应该在最合适的地方捕获它们

我检查并没有抛出 RuntimeException 。JEXL 仅记录错误并且(在我的情况下)返回 false(该方法返回布尔值)。

如何强制 JEXL 抛出错误(我的错误或 JEXLException,没关系)?

4

1 回答 1

0

看来我也必须设置严格模式。

JexlEngine jexl = new JexlEngine();
jexl.setSilent(false);
jexl.setStrict(true);

我不确定是否真的需要静音模式。

于 2014-01-22T14:50:07.113 回答