web-dev-qa-db-ja.com

Java.library.pathにrxtxSerialを追加する方法

Javaでアプリケーションを開発しています。私のOSはUbuntu 11です。私のアプリケーションは、シリアル通信にRXTXライブラリ(gnu.io. *)を使用しています。RXTXommを追加しました。これを行うことでプロジェクト内のjarファイル(プロジェクト->プロパティ-> Java buldパス->外部jarを追加)コードを実行するたびに、このエラーが発生します。

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

Librxtx-Java.debをインストールしてみました。しかしそれは問題を解決しませんでした。ファイルシステムを検索したところ、librxtxSerial.soが/ usr/lib/jniにあることがわかりました。

この問題を解決するにはどうすればよいですか?

前もって感謝します

12
Aditya Ponkshe

プロジェクト->プロパティ-> Javaビルドパスでjarを見つけます。 + JARのプロパティを開くには、ネイティブライブラリの場所を選択し、RXTXの共有ライブラリ(.DLL、.so、.dylib)を指すように編集します。

16
martijno

ターミナル(Ctrl + Alt + T)を開いて確認します。

echo $Java_HOME 
 # JDKDIR : /usr/lib/jvm/Java-7-Oracle

次に実行します:

Sudo cp /usr/lib/jni/librxtxSerial.so $Java_HOME/jre/lib/i386/
2
Abdennour TOUMI

1つの方法は、プロジェクトのEclipse実行構成でJava.library.pathを設定することです。実行構成の「引数」タブでVM引数を編集できます(これにアクセスするには、プロジェクト->実行->実行構成...と実行メニュー... >実行構成...)。

プロジェクトのルートにlibディレクトリを作成し、RXTXライブラリのコピーをlibディレクトリに配置する場合、次のVM引数(ProjNameをプロジェクトの名前に置き換える)を使用できます) 。

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