12

Eclipse IDE を使用して Java でアプリケーションを開発しています。私の OS は Ubuntu 11 です。私のアプリケーションは、シリアル通信に RXTX ライブラリ (gnu.io.*) を使用しています。これを実行して、RXTXomm.jar ファイルをプロジェクトに追加しました (プロジェクト -> プロパティ -> Java ビルド パス -> 外部 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 にあることがわかりました。

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

前もって感謝します

4

3 に答える 3

16

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

于 2013-02-19T08:33:30.570 に答える
2

1 つの方法は、プロジェクトの Eclipse 実行構成で java.library.path を設定することです。実行構成の [引数] タブで VM 引数を編集できます (これにアクセスするには、プロジェクトを右クリックして [実行] > [実行] > [実行構成] を選択し、[実行] メニューから [実行構成] を選択します)。

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

-Djava.library.path=${project_loc:ProjName}/lib
于 2013-02-19T08:50:11.797 に答える
2

ターミナル (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/
于 2014-02-08T10:57:17.537 に答える