使用 JPL 时,我在检索错误和警告消息时遇到了一些问题。例如,尝试直接从 SWI-Prolog 查询不存在的文件会产生以下输出:
1 ?- consult('NonExistingFile').
ERROR: source_sink `NonExistingFile' does not exist
true.
但是,通过 JPL 执行此查询时,不会抛出异常,并且 Query 类的 hasMoreSolutions() 方法返回 true:
Query query = new Query("consult('NonExistingFile')");
query.hasMoreSolutions();
我怎样才能检测到发生了错误并且咨询 NonExistingFile.pl 实际上失败了?同样的问题适用于检索不会导致谓词执行失败的警告消息。
编辑:将 JPL 与最高 6.0.2 的 SWI-Prolog 版本一起使用时,会发生所描述的情况