簡體   English   中英

無法在AMD 64位平台JNI上加載IA 32位.dll

[英]Can't load IA 32-bit .dll on a AMD 64-bit platform JNI

我有一個問題:我正在使用JNI處理自生成的DLL。 我已經使用Visual Studio 2013為64Bit計算機生成了DLL。 我已經檢查過Dependency Walker,如果我的DLL真的是64位,那就是。 然后我嘗試在我的Java源代碼中使用DLL(Eclipse版本:Luna Service Release 1(4.4.1)Java版本1.7.0_71-b14 64位版本)。

當我運行我的Java程序時,我得到錯誤消息無法在此行中的AMD 64位平台上加載IA 32位.dll。

     static 
     {
         System.loadLibrary("iomemjava");
     }

我已經花了2天時間解決這個問題並搜索了stackoverflow和其他一些論壇。 我真的沒有想法可能是錯的。

到目前為止,希望你們和男孩們可以幫助馬丁

Java使用系統屬性java.library.path作為查找本機庫的路徑。 啟動應用程序時,在命令行上使用-D選項定義此屬性,並使其指向包含DLL的目錄。 例如:

C:\MyProject> java -Djava.library.path=C:\MyProject\nativelib com.mypackage.MyProgram

其中C:\\MyProject\\nativelib是包含要使用的DLL的目錄。

轉到鏈接http://www.apache.org/dist/tomcat/tomcat-connectors/native/找到最新的一個 在此輸入圖像描述

下載tomcat-native-XXX-win32-bin.zip打開zip文件。 在X64文件夾下找到tcnative-1.dll 在此輸入圖像描述

最后,用zip文件中的.dll替換tomcat bin中的.dll

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM