0

我正在使用 CLIPSJNI。

我所拥有的是:

Environment clips = new Environment();
clips.load("main.clp");

其中 main.clp 与 src 和 bin 文件夹位于同一级别。

这在 Eclipse 中运行良好。但是,当我导出到 JAR 时。它不能工作。

我知道当我们导出到 JAR 时路径存在一些问题。所以我看到有人建议使用 this.getClass().getResourceStream() 但事实并非如此。因为我需要的是文件的名称,而不是它的内容。

对于如何解决这个问题,有任何的建议吗?

4

1 回答 1

0

问题是加载是在 C 端的本机库中完成的,它被传递一个文件名作为参数。C 代码没有 JAR 文件的概念或如何提取嵌入其中的文件。我认为您需要做的是始终将 .clp 文件放在 JAR 文件中,然后有一个例程从 JAR 文件中提取数据并将其保存到文件中。然后,您可以使用 load 方法加载它,并在完成后删除文件。

于 2013-07-29T23:42:56.510 回答