java.library.path中缺少文件

时间:2014-02-13 15:43:51

标签: java raspberry-pi rxtx

我正在构建一个应用程序以获取NMEA GPS数据,通过RXTX进行串行端口通信。 在我的Mac上它运行得很好。当我尝试在我的Rasp Pi上运行它时,它会抛出错误:

no rxtxSerial in java.library.path thrown while loading gnu.io.RXTXCommDriver

在Mac上,我看到如果我移动/Library/Java/Extensions/librxtxSerial.jnilib,它也会抛出相同的错误。

我的问题是:在我的RasbPi上,我是否需要将此rxtxSerial文件添加到某个文件夹(可能在JVM中?),或者在导出时是否应该使用runnable jar打包。我的Mac或我的RasbPi上有问题吗?

由于

2 个答案:

答案 0 :(得分:3)

您可以通过正常的软件包安装方法在Raspberry Pi上安装此库。

只需输入:

sudo apt-get install librxtx-java

现在你可以像这样启动jar:

java -Djava.library.path=/usr/lib/jni -cp /usr/share/java/RXTXcomm.jar -jar your.jar

答案 1 :(得分:0)

该错误表示无法找到名为rxtxSerial的本机库。您需要具有该名称的Raspberry Pi的本机库,并设置系统属性java.library.path,使其指向包含本机库的目录。这意味着您必须使用-D选项启动Java程序,例如:

java -Djava.library.path=/some/dir com.mypackage.MyProgram

其中/some/dir是包含本机库的目录。

您必须找出是否有适合您尝试使用的RXTX库的Raspberry Pi的本机库。