2013-12-11 3 views
0

Пытается запустить java-программу на машине Ubuntu. В программе Java используется библиотека RXTX и сбои, когда программа пытается открыть COM-порт:Ошибка библиотеки RXTX на Ubuntu

java.lang.UnsatisfiedLinkError: /opt/pnt/lib/librxtxSerial.so: /opt/pnt/lib/librxtxSerial.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch) thrown while loading gnu.io.RXTXCommDriver 
Exception in thread "main" java.lang.UnsatisfiedLinkError: /opt/pnt/lib/librxtxSerial.so: /opt/pnt/lib/librxtxSerial.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch) 
    at java.lang.ClassLoader$NativeLibrary.load(Native Method) 
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1750) 
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1675) 
    at java.lang.Runtime.loadLibrary0(Runtime.java:840) 
    at java.lang.System.loadLibrary(System.java:1047) 
    at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:83) 
    at Serial.tSerial.connect(tSerial.java:565) 
    at protocol.Msg.open(Msg.java:196) 
    at protocol.Msg.getMsg(Msg.java:66) 
    at jeasi.MyHandler.<init>(MyHandler.java:56) 
    at jeasi.MyHandler.main(MyHandler.java:665) 

Что может быть неправильным?

Start программа сценарий:

cd /opt/pnt; 
/usr/bin/java -Djava.library.path=/opt/pnt/lib -cp /opt/pnt/lib/commons-codec-1.5.jar:/opt/pnt/lib/log4j.jar:/opt/pnt/lib/RXTXcomm.jar:/opt/pnt/bin:. pr.MyHandler 

ответ

0

Вы запускаете 64-битную JVM и только установил 32-битную версию RxTx. Вы должны перейти к одному из forks of rxtx, указанному на странице, и загрузить 64-битную скомпилированную версию библиотеки.

Версия mfizz.com Версия, по-видимому, имеет самый простой способ скачать копии библиотеки для x64.

+0

mfizz.com составлен для centOS. Это не сработало для меня. – gkiko

+0

Вы должны задать другой вопрос, подробно указать, как вы его установили, и подробно указать, что такое ошибка, поскольку, к сожалению, это может быть любая причина, по которой это не сработало. Тот факт, что он скомпилирован для CentOS, ничего не значит; Я успешно использовал библиотеки, скомпилированные для самых разных выпусков Linux, в пользовательской сборке Linux без проблем. – Petesh

Смежные вопросы