问题标签 [jpl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Spring Data 更新查询报错
我认为该错误是类型不匹配异常,但我不知道为什么会得到它。
这是我调用它的服务
这就是 ORM
当然,它有公共的 getter 和 setter 以及一个公共的空构造函数。此错误仅在更新方法中出现,我对删除或查找方法没有任何问题..
这是它自己的查询
顺便说一句,这是编译时错误。
java - 在带有 android studio 的手机中运行时使用 jpl API 的函数时出错
我正在将 prolog 中开发的游戏链接到 android studio whith jpl ( http://jpl7.org/740/doc/index.html ) 中的 android 应用程序,当我使用库 jpl7 的功能时发生错误。
编码:
先感谢您。
java - 如何在 Gnu Prolog for java 中使用字符串(原子)术语
我是 prolog 的新手,想用 prolog + java 编写 wampus AI,尝试在 java 中的 prolog 和 GUI 中执行逻辑,但我卡住了,而且水平非常基础。
基本上我的知识库中有这样的东西
我想知道谁是莎拉的父母(父母(X,莎拉)),但我不能,因为我无法定义莎拉这个词!我可以定义诸如
但是 sara -string/atom- Term 没有一个(实际上有和 atom 但它是受保护的)。我觉得我在网上自学中错过了一些非常基本的东西。我已经多次浏览 gnu 的 prolog 文档,但我找不到我的答案
PS:在 IntelliJ Idea IDE 上工作
更新 1:
我搬到了 swi-prolog (jpl),所以我可以在那里完成我的工作,但在将 lib 添加到我的 java 项目后,我什至无法运行代码,修复了 2 个错误,但它只是一个接一个的错误(目前卡在 java:包 org.jpl7 不存在)和 google/stackoverflow 解决方案将不起作用
java - Using JPL with SWI-Prolog on macOS
I'm trying to use JPL with SWI-Prolog on macOS High Sierra and I'm having troubles. In fact, at first the libjpl.dylib
was not found so I added the path to it to java.library.path
via
Now the library is found but I get another error:
From what I understand, this is caused by this version of SWI-Prolog being relocatable (and thus having path relative to the executable).
The output of otool -L
of the libjpl.dylib
give me this output:
So one way of fixing it would be to install a not relocatable version via macport or homebrew.
The thing is, neither the MacPorts nor the Homebrew version of SWI-Prolog contains the libjpl.dylib
library :/
Am I missing something here? What can I do to make this work?
java - JPL - Java 等待来自序言查询的某个解决方案
我正在努力完成这项工作。我有一个 Java 用户界面,可以控制使用 JPL 的系统,序言。
首先我运行一个简单的查询assert(goal( work_1 ))
。当该过程完成时,它只是断言done( work_1 )
. 为了处理下一个目标goal( do(work_2 )
,我必须等待事实 done( work_1 )
。
我怎样才能使它正常工作?
java - 如何在 OS X 上连接 Eclipse 和 JPL
我遇到了其他任何地方都没有解决的问题。我已经下载libjpl.dylib
并复制到
/usr/local/Cellar/swi-prolog/7.6.4/libexec/lib/swipl-7.6.4/lib/
的输出otool -L
给libjpl.dylib
我这个输出:libjpl.dylib:
/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre/lib/server/libjsig.dylib(兼容版本1.0.0,当前版本1.0.0)/Library/Java/JavaVirtualMachines/jdk1.8.0 _131.jdk/Contents/Home/jre/lib/server/libjvm.dylib(兼容版本1.0.0,当前版本1.0.0)/usr/local/Cellar/swi-prolog/7.6.4/libexec/lib/swipl -7.6.4/lib/x86_64-darwin17.3.0/libswipl.dylib(兼容版本0.0.0,当前版本7.7.19)/usr/lib/libSystem.B.dylib(兼容版本1.0.0,当前版本1252.50。 4)
并且所有路径都是正确的。路径libjpl.dylib
添加到项目的构建路径中,Eclipse
并-Djava.library.path="/usr/local/Cellar/swi-prolog/7.6.4/libexec/lib/swipl-7.6.4/lib/"
添加到 中的 VM 参数中run configuration
。无论如何,当我想编译它时,我遇到了一个错误:
线程“主”java.lang.UnsatisfiedLinkError 中的异常:
jpl.fli.Prolog.thread_self()I 在 jpl.fli.Prolog.thread_self(Native Method) 在 jpl.Query.open(Query.java:286) 在 jpl.Query.hasMoreSolutions(Query.java:256) 在 jpl .Query.oneSolution(Query.java:688) 在 jpl.Query.hasSolution(Query.java:759) 在 Pro.main(Pro.java:12)
我错过了什么?
编码:
docker - swipl 的 Docker 镜像不包含 jpl
我使用 Jhipster(Spring + Angular)开发了一个 Web 应用程序。此应用程序使用Prolog JPL
接口。在我的机器上执行它时,我想 Dockerize 这个应用程序。Jhipster 提供了一个Dockerfile
我可以构建和运行的the docker-compose
命令。
正如我所说,我使用 Java Prolog 接口。我试图修改我app.yml
的也包括swipl
来自 Docker Hub 的图像。
我的app.yml
档案
swipl.yml
文件
我也将 jpl 包括在pom.xml
但是在阅读了swipl Docker 镜像的文档后,它说 jpl 不包含在镜像中,因为不包含 Java。有什么办法让它像在我的机器上一样工作吗?或者是否有另一个 Docker 映像包含JPL
?
如果需要任何其他信息或代码,请告诉我。
java - Create Prolog knowledge base in Java using JPL
I'm trying to wrap my head around the Java-Prolog interface library JPL. I can find plenty of examples where people query Prolog from Java for information from the knowledge base, but no examples where the knowledge base is constructed dynamically in Java. How would I do this?
spring - 带有 SWI-Prolog 的 Docker 容器因致命错误而终止
我正在开发一个 Spring Boot Web 应用程序,使用 SWI-Prolog 的 JPL 接口从 Java 调用 Prolog。在开发模式下,一切运行正常。当我将它部署到 Docker 时,通过 API 对 JPL 的第一次调用运行良好。当我再次尝试调用 JPL 时,JVM 崩溃。
我使用LD_PRELOAD指向libswipl.so
SWI_HOME_DIR也被设置。
LD_LIBRARY_PATH设置为指向libjvm.so
我的控制器功能:
控制台输出
第一次通话
第二次通话
我在 pastebin 中上传了错误日志文件。点击这里
有没有人遇到过同样的问题?有解决方案吗?
请注意,我还使用 oracle-java-8 进行了检查,但发生了同样的错误。
更新:
@CapelliC 回答无效。