我嘗試使用分詞軟件,創建一個名爲JNA
的新Java項目,並將所需文件導入到JNA
dir,然後嘗試運行它,而無需任何代碼修改和MyEclipse的警告我說:無法在JNA中加載庫NLPIR.dll
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
到E:/java/JNI/JnaTest_NLPIR/
,沒有奏效。 - 移動
NLPIR.dll
直接到JNA/bin
或JNA/lib
,但它也沒有工作。
我認爲這是由我的NLPIR.dll
的位置造成的。但我無法弄清楚如何解決它。
我將不勝感激任何幫助或建議。
我接着說:NLPIR.dll'我'PATH',並在文件修改'dll_or_so_path'項目目錄中的'nlpir.properties'指向'dll_or_so_path = D:/ javasoft/MyEclipse_workspace/JNA/NLPIR.dll'。那麼問題就消失了,但另一個問題出現了:'%1不是有效的Win32應用程序'。我使用64位MyEclipse,是這個原因嗎?我看到一些答案,可以通過將MyEclipse更改爲32位來解決問題..... –
如果您的庫是32位的,則必須使用32位JVM。您的DLL的體系結構必須與您的JVM的體系結構相匹配。 – technomage