繁体   English   中英

如何在Mac OS X中将JPL与SWI-Prolog连接

[英]How to connect JPL with SWI-Prolog in Mac OS X

嗨,我有一个jpl界面问题。 我想将JPL与带有eclipse的mac-ports安装的swi-prolog连接。 我有一个jpl.jar,我尝试用构建路径将eclipse中的jar文件导入,但出现此错误:“ java.library.path中没有jpl”。 因此,我已经在/opt/local/lib/swipl-7.1.29/bin/中复制了libjpl.dylib,执行代码时出现以下错误:“线程“ main”中的异常” java.lang.UnsatisfiedLinkError:/ opt /local/lib/swipl-7.1.29/bin/libjpl.dylib:dlopen(/opt/local/lib/swipl-7.1.29/bin/libjpl.dylib,1):库未加载:/ Users / janw /稳定/lib/swipl/lib/x86_64-darwin13.0.0/libswipl.dylib引用自:/opt/local/lib/swipl-7.1.29/bin/libjpl.dylib原因:找不到图像”

在浪费时间之后,我找到了解决该问题的方法。 首先,它完全必要通过macports安装swi-prolog,如果没有的话,就像我所做的那样,当您指向

Djava.library.path=/users/rivax/Applications/SWI-Prolog.app/Contents/swipl/lib/x86_64-darwin13.0.0

这种异常将会出现

Exception in thread "main" java.lang.UnsatisfiedLinkError: /Users/rivax/Applications/SWI-Prolog.app/Contents/swipl/lib/x86_64-darwin13.0.0/libjpl.dylib: dlopen(/Users/rivax/Applications/SWI-Prolog.app/Contents/swipl/lib/x86_64-darwin13.0.0/libjpl.dylib, 1): Library not loaded: /Users/janw/stable/lib/swipl/lib/x86_64-darwin13.0.0/libswipl.dylib Referenced from: /Users/rivax/Applications/SWI-Prolog.app/Contents/swipl/lib/x86_64-darwin13.0.0/libjpl.dylib Reason: image not found at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1965) at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1890) at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1880) at java.lang.Runtime.loadLibrary0(Runtime.java:849) at java.lang.System.loadLibrary(System.java:1088) at jpl.JPL.loadNativeLibrary(JPL.java:100) at jpl.fli.Prolog.<clinit>(Prolog.java:85) at jpl.Query.open(Query.java:286) at jpl.Util.textToTerm(Util.java:162) at jpl.Query.<init>(Query.java:198) at consultasProlog.Consultas.consultaFicheroProlog(Consultas.java:19) at utilidades.RellenarModelo.ejecutarArchivo(RellenarModelo.java:30) at javaprolog.JavaProlog.main(JavaProlog.java:30) Java Result: 1

因此,请按照下列步骤。

  1. 在终端上安装port swi-prolog,如果尚未安装macports命令,则会出现未找到的命令,因此请转至https://www.macports.org/install.php并安装macports。
  2. 导航到swi prolog macports安装路径,该路径是/opt/local/lib/swipl-6.6.6/lib/x86_64-darwin14.0.0
  3. 复制此路径并在Java VM中的java.library.path中将其设置为-Djava.library.path=/opt/local/lib/swipl-6.6.6/lib/x86_64-darwin14.0.0

现在,带有jpl.jar的.pl将能够执行,并且咨询将运行。

希望它能对您和所有发现此地狱问题的人有所帮助。

干杯坦白。

暂无
暂无

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

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