2016-11-14 6 views
0

単語分割ソフトウェアを使用して、JNAという名前の新しいJavaプロジェクトを作成し、必要なファイルをJNA dirにインポートしてから、コードを変更せずに実行しようとします。 、とのMyEclipseがあることを私に警告します。同じのdirsを作成し、E:/java/JNI/JnaTest_NLPIR/NLPIR.dllを移動し、それは動作しませんでしたライブラリNLPIR.dllをJNAに読み込むことができません

  • Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'E://java//JNI//JnaTest_NLPIR//NLPIR': Native library (win32-x86-64/E://java//JNI//JnaTest_NLPIR//NLPIR.dll) not found in resource path ([file:/D:/javasoft/MyEclipse_workspace/JNA/bin/, file:/D:/javasoft/MyEclipse_workspace/JNA/lib/jna-4.0.0.jar])

    私がしようとしました。

  • NLPIR.dllを直接JNA/binまたはJNA/libに移動しますが、動作しませんでした。

私はNLPIR.dllの位置に起因すると思います。しかし、私はそれを修正する方法を見つけることができませんでした。

私は何か助けや提案に感謝します。

答えて

0

NLPIR.dllを確認(およびそのすべての依存ライブラリ)%PATH%上にある、またはそれは中のフォルダを示すために-Djna.library.path=...を使用しています。

+0

私は 'PATH'に' NLPIR.dll'を追加し、ファイルに 'dll_or_so_path'を修正プロジェクトディレクトリの 'nlpir.properties'を' dll_or_so_path = D:/ javasoft/MyEclipse_workspace/JNA/NLPIR.dll'にコピーします。問題はなくなりましたが、別のものがありました: '%1は有効なWin32アプリケーションではありません。 '私は64ビットMyEclipseを使用しています、それは原因ですか? MyEclipseを32ビットに変更することで問題が解決できるとの回答がありました。 –

+0

ライブラリが32ビットの場合は、32ビットJVMを使用する必要があります。 DLLのアーキテクチャは、JVMのアーキテクチャと一致する必要があります。 – technomage

関連する問題