2012-12-19 2 views
4

J'essaie d'utiliser la bibliothèque de communication série rxtx sur debian et j'ai ajouté librxtx.so au chemin de la bibliothèque native, mais cette exception est toujours présente.java.lang.UnsatisfiedLinkError: no rxtxSerial dans java.library.path debian

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) 
+0

S'il vous plaît quelqu'un me aider .... – Nutan

Répondre

0

Set LD_LIBRARY_PATH dans le répertoire où vous avez le fichier .so.

Laissez le répertoire dans lequel vous avez le fichier .so est /home/abc

Utilisez cette commande:

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

En java charger le .donc de la manière suivante ..

System.loadLibraryPath("rxtxSerial"); 

Pour le mettre en permanence, vous devez mettre la même ligne dans .profile fichier qui sera dans votre directeur de la maison y.

you can refer to this guide

+1

Comment définir LD_LIBRARY_PATH ??? – Nutan

+0

l'exportation est la commande pour définir le LD_LIBRARY_PATH .. @ Pooja – gks

+1

Non cela ne fonctionne pas :(.... – Nutan

0

Je copier et coller le rxtx installer l'aide

Solution 1: move the file to a place that works 

    $ mv /usr/local/lib/librxtxSerial.* /usr/local/java/jre/lib/i386/ 

Solution 2: add the location of librxtxSerial to LD_LIBRARY_PATH 

    $ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/ 

Solution 3: pass the location in on the command line 

    $ java -Djava.library.path=/usr/local/lib/ ... 

Source

http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7pre17/INSTALL

3

Pour moi, la solution est de copier le lien vers la bibliothèque où la jvm peut le voir comme si:

cp '/usr/lib/jni/librxtxSerial.so' '/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/i386' 
0

Vous devez mettre le rxtxSerial.dll dans le dossier jrexx/bin

Questions connexes