JNI 專案中的UnsatisfiedLinkError 故障排除
當在JNI 專案中遇到「UnsatisfiedLinkError: Can'這一點至關重要解決本機函式庫與其依賴函式庫之間存在問題的關係。
在您的情況下,mylib.dll 依賴 libsndfile-1.dll,而 libsndfile-1.dll 又需要 MPR.DLL 和 SHLWAPI.DLL。如前所述,可以忽略 Dependency Walker 關於未解決的 MPR.DLL 和 SHLWAPI.DLL 匯入的警告。
要解決此問題,請確保所有依賴 DLL 都存在於與 mylib.dll 或 mylib.dll 相同的目錄中並且可存取沿著 Windows PATH 環境變數。
此外,系統屬性 java.library.path 並未直接負責定位 DLL。在 Windows 中,如果未使用 java.library.path,則 DLL 必須位於目前工作目錄或 PATH 目錄中。
要進行驗證,請執行「java -XshowSettings:properties -version」並檢查共用程式庫搜尋路徑的 java.library.path 屬性。
記住,依賴函式庫必須存在且可存取;它們與本機庫的相對位置應遵守上述指南。
以上是如何解決 JNI 專案中的「UnsatisfiedLinkError:找不到依賴函式庫」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!