八度和 Java: libjvm.so 未找到

Octave and Java: libjvm.so not found

我正在尝试在 GNU Octave 中使用 WFDB toolbox for Matlab from Physionet。一个先决条件是 GNU Octave 3.8.1 或更高版本带有 Java 包,所以我已经为我的 Debian 7.8 编译了它,然后从 Octave 中安装了 Java 包。我不确定是否正确地进行了编译,我在配置过程中遇到了 Java 界面的一些问题。

问题是当从 Octave 调用 Java 方法时,我得到这个错误:

error: javaMethod: 
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/client/libjvm.so:
failed to load:
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/client/libjvm.so:
cannot open shared object file: No such file or directory

我检查了文件是否存在,发现"client"文件夹不存在。另一方面,存在 "server" 文件夹,我还找到了

/usr/lib/jvm/java-1.5.0-gcj-4.7/jre/lib/amd64/client

我不明白为什么这些文件丢失了,我不是 Java 程序员也不是 GNU/Linux 专家。

非常感谢您的帮助。

您不需要安装 java 包。 java 包中的函数已合并到 3.8 版本的 Octave 核心语言中。您不需要做任何事情,java 应该为您开箱即用(前提是您在构建它时没有搞砸)。如果您在安装 Octave 3.8 时安装了 java 软件包,您可能会隐藏它自己的功能。

我建议您使用 Debian 存储库中的 Octave 版本。您正在使用 Debian 7 (wheezy),因此您可以使用 wheezy-backports which already have Octave 3.8.2。如果您不熟悉它,则无需费力地从源代码构建它,Debian 已经为您提供了一个。