use*_*282 5 java eclipse dll prolog swi-prolog
我在安装jpl库时遇到问题.我安装了最新的swipl版本(但之前我也尝试过不稳定的版本):
SWI-Prolog 7.2.3 for Windows 7/8/10 64-bit edition
Run Code Online (Sandbox Code Playgroud)
然后我添加了依赖路径到环境变量:
Variable: SWI_HOME_DIR
Value: C:\Program Files\swipl
Run Code Online (Sandbox Code Playgroud)
然后我补充说,Path这些值:
%SWI_HOME_DIR%\lib\jpl.jar;
%SWI_HOME_DIR%\lib;
%SWI_HOME_DIR%\bin
Run Code Online (Sandbox Code Playgroud)
我还添加了这样的VM参数:
-Djava.library.path="C:\Program Files\swipl\bin"
Run Code Online (Sandbox Code Playgroud)
确保Eclipse看到此文件夹.
之后我仍然得到错误:
Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: C:\Program Files\swipl\bin\jpl.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1855)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at org.jpl7.JPL.loadNativeLibrary(JPL.java:79)
at org.jpl7.fli.Prolog.<clinit>(Prolog.java:41)
at org.jpl7.Query.open(Query.java:260)
at org.jpl7.Util.textToTerm(Util.java:102)
at org.jpl7.Query.Query1(Query.java:129)
at org.jpl7.Query.<init>(Query.java:120)
Run Code Online (Sandbox Code Playgroud)
我100%肯定,Eclipse会看到该jpl.dll文件,但在我看来,它似乎需要一些其他库.
我知道这个帖子可能与以下任何一个都重复:
jpl.dll:找不到依赖库
JPL找不到jpl.dll的依赖库
但这些问题没有得到解答,或者答案在我的案例中没有帮助.
我添加了环境变量的依赖路径:变量:
SWI_HOME_DIR价值:
C:\Program Files\swipl然后我添加了
Path这些值:
%SWI_HOME_DIR%\lib\jpl.jar;
%SWI_HOME_DIR%\lib;
%SWI_HOME_DIR%\bin
将三个库文件(jpl.dll、jpl.jar和jpl.pl)放在每个都可以找到的位置:
jpl.dll必须由Windows 内核找到,并且可以位于PATH 环境变量上的任何文件夹中;也许%SWI_HOME_DIR%\bin
或者你的Windows 系统文件夹
jpl.jar必须由与JPL一起使用的任何Java VM(和编译器)找到。一种可能性是将其放在全局CLASSPATH中。
jpl.pl是一个Prolog源模块,并且必须由与JPL一起使用的任何SWI-Prolog引擎找到
:我建议将其放入然后调用
该文件夹(有关详细信息,请参阅SWI-Prolog手册),以便自动加载器可以找到它。%SWI_HOME_DIR%\librarymake_library_index/1
| 归档时间: |
|
| 查看次数: |
881 次 |
| 最近记录: |