2015-02-06 27 views
0

嗨,我有一個jpl接口的問題。我想連接JPL和swi-prolog,安裝了eclipse的mac-ports。我有一個jpl.jar和我已經嘗試導入與構建路徑在eclipse中的jar文件,但我有這個錯誤:「在java.library.path中沒有jpl」。 所以我複製libjpl.dylib在/opt/local/lib/swipl-7.1.29/bin/和當我執行代碼時,我有這個錯誤:「線程中的異常」主「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 /stable/lib/swipl/lib/x86_64-darwin13.0.0/libswipl.dylib 從引用:/opt/local/lib/swipl-7.1.29/bin/libjpl.dylib 原因:圖片未找到」如何在Mac OS X中連接JPL和SWI-Prolog

回答

1

經過厭煩浪費時間,我找到了解決這個問題的方法。所有的 首先,它完全necesary通過MacPorts的,安裝SWI-序言如果沒有,像我一樣,當你在

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

點這個異常將apear

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. 端口在終端上安裝swi-prolog,如果你沒有安裝已經macports命令沒有找到將apear如此去https://www.macports.org/install.php並安裝macports。
  2. 導航到SWI序言的MacPorts安裝的路徑,其礦 /opt/local/lib/swipl-6.6.6/lib/x86_64-darwin14.0.0
  3. 複製這條道路和的java.library.path在Java虛擬機設置爲-Djava.library.path=/opt/local/lib/swipl-6.6.6/lib/x86_64-darwin14.0.0

現在特等與jpl.jar將能夠執行並且諮詢將會運行。

希望它能幫助你和每個找到這個地獄問題的人。

乾杯坦率。