我正在通过JPL桥开发Java + Prolog应用程序。主要应用程序是Java,它使用Query.oneSolution("doPrologStuff(here)")
我尝试使用Query.hasSolution("gtrace")
运行GUI调试器/跟踪器,但它会引发异常:
Exception in thread "main" jpl.PrologException: PrologException: error(existence_error(procedure, /(gtrace, 0)), context(:(system, /('$c_call_prolog', 0)), _0))
at jpl.Query.get1(Query.java:336)
...
(同样适用于“guitracer”)
当我直接在gtrace.
中运行Prolog代码时,调用swipl
效果很好。
当我尝试Query.hasSolution("trace")
时,它允许我使用文本控制台调试代码,但这不是我正在寻找的。有关如何启用GUI调试器的任何想法吗?
我在Ubuntu上使用Eclipse进行开发,但如果有帮助我可以尝试其他工具:)
答案 0 :(得分:0)
您需要附加Prolog的图形环境(xpce)。你可以通过加载来做到这一点 文件swi('swipl.rc')。接下来的问题是事件调度是否发生。 这取决于设置。如果您使用最新的5.11.18 / 5.10.4版本,则可以设置 Prolog标志xpce_threaded为true,这导致SWI-Prolog运行开发工具 在他们自己的线程中(目前只适用于Unix / Linux系统)。