【问题标题】:Octave and Java: libjvm.so not foundOctave 和 Java:找不到 libjvm.so
【发布时间】:2015-07-21 22:31:23
【问题描述】:

我正在尝试在 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

我检查了文件是否存在,我发现“客户端”文件夹不存在。另一方面,“服务器”文件夹存在,我也找到了

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

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

非常感谢您的帮助。

【问题讨论】:

  • 在 ubuntu 上显然是一些更新,因为我安装了 octave 最初导致了这个。 “apt-get remove octave”,然后是“apt-get install octave”,无论它是什么。

标签: java debian octave


【解决方案1】:

您不需要安装 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 已经为您提供了一个。

【讨论】:

  • 好的,现在我得到 [error: [java] java.lang.NullPointerException],但我猜是工具箱的问题...谢谢你的回答!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-25
  • 1970-01-01
  • 1970-01-01
  • 2014-07-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多