質問

I am developing an application in Java using Eclipse IDE. My os is Ubuntu 11. My application is using the RXTX library (gnu.io.*) for serial communication. I have added the RXTXomm.jar file in project by doing this (project->Properties->java buld path->add external jars). whenever I run my code it gives me this error.

java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path thrown while loading
gnu.io.RXTXCommDriver
Exception in thread "main" java.lang.UnsatisfiedLinkError: no rxtxSerial in 
java.library.path

I even tried installing librxtx-java.deb. but it did not fix the problem. I searched around in file system and found that librxtxSerial.so is located in /usr/lib/jni.

How can I fix this issue?

Thanks in advance

役に立ちましたか?

解決

Find your jar in Project -> properties -> Java build path. Click on the + to open the JAR's properties, select Native library location and edit it to point to RXTX's shared library (.DLL, .so, .dylib).

他のヒント

One method is to set java.library.path in the Eclipse Run Configuration for your project. You can edit VM arguments in the Arguments tab of your Run Configuration (a couple of ways to access this include right click on project->Run As->Run Configurations... and Run menu->Run Configurations...).

If you create a lib directory in the root of your project and place a copy of the RXTX library in the lib directory you could use the following VM argument (substituting ProjName with the name of your project).

-Djava.library.path=${project_loc:ProjName}/lib

Open Terminal(Ctrl+Alt+T) and check :

echo $JAVA_HOME 
 # JDKDIR : /usr/lib/jvm/java-7-oracle

then run :

sudo cp /usr/lib/jni/librxtxSerial.so $JAVA_HOME/jre/lib/i386/
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top