问题标签 [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.

0 投票
1 回答
567 浏览

java - 使用 SWI-Prolog 的 JPL 接口

我想使用 JPL 为我的项目创建图形界面,所以我去搜索了一个代码示例以开始使用,我下载了代码,但是当我运行它时,它显示以下消息:

当我尝试使用它显示的代码的一个功能时:

我有点试图将包含 java.dll 的文件夹放到系统变量中的 PATH 中,但它一直显示相同的消息我的 SWI-Prolog 是 7.6.4 64 位版本,我认为代码本身没有任何问题,因为有在我下载它的视频中没有人抱怨它。

编辑:消息说 java.dll 现在已经消失了,现在只剩下 2 条其他消息,我已经在系统变量下的路径中包含了我认为相关的所有内容。

0 投票
1 回答
143 浏览

java - 如何将 java 数组转换为 prolog 列表并使用它进行 jpl 查询?

我正在用java制作一个数独求解器,它的核心是一个小的prolog kb。序言“数独”规则需要序言列表。在 java 中,我有一个带有数独值的 int[][]。

我已经使用列表的序言列表成功运行查询,例如列表的序言列表Query q1 = new Query("problem(1, Rows), sudoku(Rows).");在哪里Rows,但我还需要使用 Java int[][] 使其运行,例如Query q1 = new Query("sudoku", intArrayTerm);

相关的java代码:

序言代码:

函数parseTextFieldand parseSolvedRowsTerm,实际上是整个程序,在注释掉的情况下可以正常工作Query q1,但在未注释掉的情况下则不行Query q1

0 投票
1 回答
115 浏览

java - JPL7 中“断言”的等价物

我目前正在创建一个 Java Swing GUI,用户可以在其中选择他们喜欢的水果类型。根据他们的选择,只会显示某些水果产品。例如,如果用户选择“葡萄”,则只显示葡萄产品,如葡萄酱或葡萄汁。

问题在于如何将一些事实断言到 Prolog 中。例如,我试图断言用户选择了“葡萄”。TLDR;我正在尝试找到与以下 SWI-Prolog 命令等效的 JPL:

以下是我尝试过的两种尝试。

我试过的另一个是:

第一次尝试抛出了一个 syntax_error,而第二次尝试在运行时抛出了一个存在错误。如果有人能提供一些启示,那将不胜感激。

0 投票
0 回答
85 浏览

java - SWI-Prolog 无法通过 JPL 运行外部进程

我下载了最新版本的 SWI-Prolog 并按照说明进行构建。没问题,所有测试都正常。我开发了一个用 Prolog 编写的工具,它利用 Python 例程使用 process/2 内置函数来调用它。它运作良好。

当我尝试使用 JPL 从 Java 接口调用 Prolog 代码时出现问题。一切都很顺利,直到 Prolog 尝试执行对 Python 例程的调用:Java 无法执行“process/2”SWI-Prolog 内置函数。

错误的回溯如下:

我已经仔细检查了and 变量中and的libjpl.so存在。实在是摸不着头脑。libswipl.so$LD_PRELOAD$LD_LIBRARY_PATH

任何帮助表示赞赏,谢谢。

0 投票
1 回答
384 浏览

java - 将 Java 和 Prolog 与 JPL 连接时出现问题

我想使用 JPL 将 Java 和 Swi Prolog 连接在一起。当我在 Intellij 上将库添加到我的项目中时,编译的代码以及当我尝试运行查询时出现运行时错误:

我有 swi prolog 64 位。

我试过卸载它并使用 32 位,但它不起作用。

到目前为止我做了什么:

我将 SWI_HOME_DIR 添加到我的环境变量中。我还将 swi 路径添加到 Path 变量中。我将 jpl 库添加到我的项目中(并且成功添加了它)。

我试图运行的代码:

0 投票
1 回答
286 浏览

spring - java.sql.SQLSyntaxErrorException:ORA-00923:在预期的地方找不到 FROM 关键字

我正在尝试在名为 Account 的对象中转换本机查询的结果。但是当我调用 API 时,它会抛出这个。有趣的事实是,如果将查询复制粘贴到 sql 开发人员中,它可以完美运行,而不会抛出“FROM 关键字未在哪里找到 ....”错误。

这是我的Foo.java

账户.java

FooRepository.java

0 投票
1 回答
76 浏览

java - 使用 Java 和 JPL 从 SWI-Prolog 检索错误消息

当我使用 JPL(来自 JavaSE 1.8)时,Prolog(SWI-Prolog 版本 8.2.2)可以返回错误消息而不会引发异常。例如,当使用咨询并且文件有错误时:

我在控制台得到输出:

但不会抛出异常。因此,我的 Java 程序无法知道所查阅的文件有错误。我在这个简单示例中使用的文件test.pl仅包含一个带有语法错误的简单谓词:

我该怎么做才能让我的 Java 程序捕捉到这个错误?类似标题的帖子似乎无法解决此问题...

也许我可以使用 JPL 或其他来源的语法检查方法,有什么具体的想法吗?

0 投票
1 回答
65 浏览

prolog - 使用 prolog 的文件问题(存在错误)

为什么在使用 Eclipse 时文件运行没有问题,但是当我创建同一程序的 jar 文件时,我无法在我的电脑上本地运行它?

这是我得到的错误,其中 a 是输入,而 signal.pl 是我在桌面中传递的文件:

0 投票
0 回答
23 浏览

java - 使用 Java 而不是 Groovy 构建 Jenkins 管道库

我想使用 Java 而不是 Groovy 编写我的公司 Jenkins Pipeline Library,因为 groovy 比 Java 慢。我试图找到此类 Java Jenkins 库源代码的示例,但我只找到了 Groovy。对此模型的任何帮助(Java 库 + Jenkins)。你有过这样的作曲经验吗?提前致谢。