2014-05-09 186 views
1

我試圖從小應用程序中使用LWJGL,但似乎在我的64位機器上加載32位庫給我這個錯誤:java.lang.UnsatisfiedLinkError: C:\Users\Max\AppData\Roaming\mcoln172\lwjgl.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform,我查看了LWJGL中的Sys文件,它使用os.arch值來確定使用64位或32位庫。我打印出我的電腦os.arch,看起來它正如預期的那樣是amd64。它甚至不應該嘗試加載lwjgl.dll,但它確實,我無法找出什麼是錯的。幫幫我?無法在AMD 64位平臺上加載IA 32位.DLL LWJGL

+0

將代碼發佈到加載LWJGL庫的位置(如果適用)。您可能想嘗試顯式加載64位jar。 – MarsAtomic

回答

0

我有同樣的問題。我必須查看LWJGL代碼才能發現,如果加載lwjgl64.dll失敗,它將嘗試加載32位版本。令人困惑的是,這種失敗是無聲的。你可以把它通過激活LWJGL調試模式下生成日誌,具有例如:

System.setProperty("org.lwjgl.util.Debug", "true") 

這樣做,顯示了以下錯誤嘗試加載64位lib目錄下:如果你有同樣的

[error] [LWJGL] Failed to load 64 bit library: lwjgl64.dll: Access is denied

,解決方案似乎是給予文件適當的「執行」權限(this post對我有幫助)。我不知道如何在所有的Windows版本中做到這一點,但幸運的是,我也可以通過Linux訪問我的文件,並且使用了簡單的chmod +x

相關問題