2

私のプロジェクトには、シリアル通信を管理するために使用する rxtx ライブラリがあります。アプリケーションを netbeans ide で実行しても問題はありません。rxtx ファイルを Java フォルダーに配置し、プロジェクト ライブラリにパスを追加しました。プロジェクトのjarファイルをビルドすると、問題が発生します。jar ファイルを作成し、costum ライブラリのフォルダーを /lib フォルダーに追加します。ただし、jar ファイルをダブルクリックしても実行できません。コマンドラインから実行すると、次のようになります。

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

プログラムが /lib フォルダで rxtx ライブラリを見つけられるようにするにはどうすればよいですか?

4

3 に答える 3

0

必要なライブラリを jar ファイルに抽出できます (コマンド ラインを使用したくない場合)。このサイトをチェックして、netbeans でこれを実現してください。

于 2013-08-14T21:43:37.697 に答える
0

次のいずれかを行う必要があります。

  1. コマンド ラインから Java を実行するときに、/lib を含むクラスパスを指定します。これを行うには、-cp オプションを使用します。
  2. /lib をバンドルする実行可能 jar を適切に作成します。私はMavenとこのプラグインを使用してそれを作成します: https://code.google.com/p/onejar-maven-plugin/
于 2013-08-14T21:32:07.257 に答える
0

コマンド ラインからプログラムを実行する場合はjava.library.path、JVM がネイティブ ライブラリにアクセスできるように を指定する必要があります。

プログラムを実際にどのように実行するかを知らなくても、コマンドがどのように見えるかを推測します

java -cp yourjar.jar -Djava.library.path=/yourProjectPath/lib gnu.io.RXTXCommDriver
于 2013-08-14T21:40:07.363 に答える