首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试在OS X中使用JPL和YAP Prolog时抛出异常

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

Stack Overflow用户
提问于 2011-07-14 21:41:40
回答 2查看 648关注 0票数 17

我正在尝试使用JPL来实现Java程序和YAP Prolog之间的交互。

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

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

例外如下所示:

代码语言:javascript
复制
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上,我在Ubuntu上试过了,一切都很好。

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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-08 22:37:45

在将Yap更新到6.2.2之后,JPL可以正常工作。不幸的是,我不能完全确定这个问题是否确实与我使用的前一个Yap版本(6.2.0)有关,或者与其他因素有关。

票数 2
EN

Stack Overflow用户

发布于 2011-11-04 04:26:17

看起来你必须设置一个特殊的use-flag来支持swi-prolog中的线程。

有关更多详细信息,请查看此处:

http://comments.gmane.org/gmane.comp.ai.prolog.swi/5335

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6694092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档