System.loadLibrary(Core.NATIVE_LIBRARY_NAME)
使用如上方法加載本地 dll文件。
一般會出現兩種錯誤:
1、 UnsatisfiedLinkError java.library.path
2、UnsatisfiedLinkError Can't find dependent libraries
第一種錯誤為 沒有加載到指定的 dll文件,該配置可以百度搜索 java.library,path 設置進行配置。
通用方式,將opencv.dll 文件放入到 ~/jdk/bin (本機器所裝jdk安裝目錄下的bin)中。該目錄默認包含在 java.library.path變量中,可以直接使用。
還有則可以在JVM啟動時,使用 -D參數進行設置 java.library.path 如:-Djava.library.path=xxx/opencv.dll
另外,可以直接將 dll文件放入項目中,參見 opencv 基本使用
第二種錯誤為 opencv.dll 不僅僅使用這單獨一個dll文件,其中會調用其他dll文件,可以通過 dependency-walker 查看該dll依賴哪些其他的dll文件,如下。
則表示 該opencv.dll 依賴以上兩個報錯的dll文件,提示系統無法加載到該文件,下載這兩個dll 文件放入到windows/system32目錄下即可。
這樣就可以在使用opencv.dll 的時候加載到其多依賴的dll文件了。
以上。