2015-10-14 77 views
0

我在将Java导出到可运行jar文件时尝试在我的Java应用程序中使用Arduino时出现问题。当我运行在IDE的应用程序运行得很好,在同一台机器上导出的罐子也一样,但是当我在不同的机器上运行它,我得到了java.lang.UnsatisfiedLinkError:runnable jar中的java.library.path中没有rxtxSerial

java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path. 

我相信,我已经添加了RXTXcomm.jar和rxtxserial.dll到构建路径如下图所示build path

在其他机器,我把我的罐子,我复制提到两个文件在完全相同的位置,但错误仍然存​​在。

+0

你设置了'java.library.path'吗? http://stackoverflow.com/questions/661320/how-to-add-native-library-to-java-library-path-with-eclipse-launch-instead-of – Marged

+0

你的jar文件需要它的RXTXcomm.jar classpath在运行时也是如此......除非你正在使用某些东西来为它创建一个超级jar。我相信像Maven和Gradle这样的通用Java构建系统有插件来构建超级罐。 – Powerlord

+0

是的,我在构建路径中添加了RXTXcomm.jar和rxtxserial.dll,在我的问题中有一个图像链接。 – user3382344

回答

0

您必须将RXTXcomm.jar的内容复制到导出的JAR文件中。

将dll放入jre_home/bin /或您的程序主文件夹中。

+0

dll文件不在jar中我只是将它们添加到本机库位置的构建路径中 – user3382344

+0

这应该是正确的。将dll放在应用程序主目录中,或者将它放在jre_home/bin/do中,将它放置在jre_home/bin/ – Friwi

+0

中,我需要指定构建路径以便在那里查找它们,或者在没有指定的情况下自动完成它? – user3382344

相关问题