java – 尝试在OS X中使用JPL和YAP Prolog时抛出异常

我试图使用JPL来进行Java程序和YAP Prolog的交互。

在我的java文件中,这行抛出异常:

Query query = new Query(“consult”,new Term [] {new Atom(“test.pl”)});

例外如下:

Exception in thread "main" jpl.JPLException: this Query's engine is not that which is attached to this thread
at jpl.Query.close(Query.java:511)
at jpl.Util.textToTerm(Util.java:165)
at jpl.Query.Query1(Query.java:183)
at jpl.Query.<init>(Query.java:176)
at Test.main(Test.java:12)

虽然我没有在YAP中找到报告相同问题的人,但有些人在SWI中遇到了这个问题,建议您验证SWI是否经过多线程支持编译。以防万一我编译YAP支持多线程,但没有帮助。

这个问题只发生在OS X中,我在Ubuntu中尝试过,一切都可以正常工作。

有人知道OS X中的这个问题的解决方法吗?

将Yap更新为6.2.2后,JPL正常工作。不幸的是,我不能完全确定这个问题确实与我之前使用的Yap版本(6.2.0)有关,或者与其他内容有关。
http://stackoverflow.com/questions/6694092/exception-thrown-when-trying-to-use-jpl-and-yap-prolog-in-os-x

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:java – 尝试在OS X中使用JPL和YAP Prolog时抛出异常