4

debian で rxtx シリアル通信ライブラリを使用しようとしており、librxtx.so をネイティブ ライブラリ パスに追加しましたが、それでもこの例外が発生します。

    java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1738)
    at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    at java.lang.System.loadLibrary(System.java:1028)
    at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:83)
    at com.vxoom.qit.basic.Log4jInit.startPrinterThread(Unknown Source)
    at com.vxoom.qit.basic.Log4jInit.init(Unknown Source)
    at javax.servlet.GenericServlet.init(GenericServlet.java:39)
    atwinstone.ServletConfiguration.ensureInitialization(ServletConfiguration.java:183)
    at winstone.WebAppConfiguration.<init>(WebAppConfiguration.java:918)
    at winstone.HostConfiguration.initWebApp(HostConfiguration.java:131)
    at winstone.HostConfiguration.<init>(HostConfiguration.java:73)
    at winstone.HostGroup.initHost(HostGroup.java:85)
    at winstone.HostGroup.<init>(HostGroup.java:45)
    at winstone.Launcher.<init>(Launcher.java:196)
    at winstone.Launcher.main(Launcher.java:391)
4

4 に答える 4

3

私にとっての解決策は、ライブラリへのリンクを、jvm が次のように表示できる場所にコピーすることでした。

cp '/usr/lib/jni/librxtxSerial.so' '/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/i386'
于 2013-06-20T13:48:44.070 に答える
0

LD_LIBRARY_PATHファイルがあるディレクトリに設定し.soます。

.soファイルがある ディレクトリを/home/abc

次のコマンドを使用します。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"/home/abc"

Java では、次の方法で .so をロードします。

System.loadLibraryPath("rxtxSerial");

.profile永続的に設定するには、ホームディレクトリにあるファイルに同じ行を配置する必要があります。

このガイドを参照できます

于 2012-12-19T09:54:04.190 に答える
0

rxtxSerial.dll を jreXX/bin フォルダーに配置する必要があります。

于 2013-11-05T15:12:11.550 に答える