この問題は本当に私を抱きしめています。私は大規模なJavaソフトウェアのためのいくつかのプラグインライブラリを書いた。私の開発コンピュータでは、すべてうまく動作します。しかし、Nullsoft Installerでソフトウェアをコンパイルしてラップして別のコンピュータにインストールした後、私が開発したネイティブdllプラグイン以外のものはすべて実行され、System.loadLibraryを呼び出すとUnsatisfiedLinkErrorが返されます。インストーラは私のdevのコンピュータ上で動作し、インストールされたソフトウェアは元のソフトウェアを移動した後も正常に動作します。ネイティブライブラリは、.NET(C++/CLI)でdevedさJava LoadLibrary UnsatisfiedLinkError、Javaはファイルを見ることができますが、別のコンピュータで動作します
新しいコンピュータ上のソフトウェアは、右のライブラリパスをロードしているJNI
での浮き、見ることができます:ここでは、私が知っているものですネイティブdll。 Javaでは、Fileクラスを使用してファイルのパーミッションをチェックするためのセグメントを追加しましたが、Javaはlibrary_dll.canRead()およびlibrary_dll.canWrite()ではうまく動作しますが、library_dll.canExecute()ではハング/クラッシュします。
誰でも私を助けることができるなら、私は本当にそれを感謝します!皆さん、ありがとうございました!
UnsatisfiedLinkErrorに含まれるメッセージ/スタックは、問題を特定する上で重要です。回答はあなたがそれを含めるまで推測することしかできません。 –
プログラムを実行するときに-Djava.library.pathを指定していますか? –