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にあることがわかりました。
この問題を解決するにはどうすればよいですか?
前もって感謝します
プロジェクト->プロパティ-> Javaビルドパスでjarを見つけます。 + JARのプロパティを開くには、ネイティブライブラリの場所を選択し、RXTXの共有ライブラリ(.DLL、.so、.dylib)を指すように編集します。
ターミナル(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/
1つの方法は、プロジェクトのEclipse実行構成でJava.library.pathを設定することです。実行構成の「引数」タブでVM引数を編集できます(これにアクセスするには、プロジェクト->実行->実行構成...と実行メニュー... >実行構成...)。
プロジェクトのルートにlibディレクトリを作成し、RXTXライブラリのコピーをlibディレクトリに配置する場合、次のVM引数(ProjNameをプロジェクトの名前に置き換える)を使用できます) 。
-Djava.library.path=${project_loc:ProjName}/lib