繁体   English   中英

使用JPL从Java重新启动Prolog引擎

[英]Restarting Prolog engine from Java using JPL

在一个使用JPL与Prolog进行交互的Java应用程序中,我希望能够使用不同的设置重新启动Prolog引擎。 例如,我想从SWI更改为YAP(我使用方法JPL.setNativeLibraryDir配置要使用此引擎的引擎, JPL.setNativeLibraryDir带有需要使用的正确本机库的路径)。

因此,在更改了JPL配置之后,我试图停止已经运行的prolog引擎,以便随后使用JPL.init()重新启动它。

首先,我看了一下JPL.halt() ,但是文档说它已被弃用,并且该方法的源代码中的注释说它是no-op。

之后,我尝试仅使用'halt'启动查询,但是尽管我在控制台中看到“ YAP执行已停止”,但我的Java应用程序也已停止(!)。

有没有一种方法可以使用JPL重新启动逻辑引擎而不杀死我的Java应用程序?

为什么不使用批处理文件来运行脚本。 首先,您可以使用/ Applications / swi -l your / swi / code,然后在您的序言代码中使用halt,以便在执行后暂停。 您可以使用运行时方法在Java内部运行批处理文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM