带有 openCV 库的可执行 jar(Eclipse,Mac)

Executable jar with openCV lib (Eclipse, Mac)

我遇到了与下面 post 同样的问题。但答案对我不起作用。 我希望 link这样没问题。

How to package opencv +java in a jar

我正在像这样加载我的 opencv 库:

System.loadLibrary(Core.NATIVE_LIBRARY_NAME); // for opencv

在 Eclipse 中,我 link 编辑了 opencv 的本地库。 一切正常,直到我尝试导出 jar 文件。

可能是因为没有导出本机库。 在我的 mac 上,我有本地库: /JavaLibraries/opencv/opencv-3.0.0/build/lib

有谁知道如何更改上面 link 中的代码以便本机库也被导出?

谢谢

而不是使用此代码加载库:

System.loadLibrary(Core.NATIVE_LIBRARY_NAME); // for opencv

我会用这个函数来做:

    private static void loadOpenCVLibrary() {
        //all opencv libs must be copyed to OpenCV_lib in the project workspace
        File folder = new File("OpenCV_lib/");
        File[] listOfFiles = folder.listFiles(); 

    for (int i = 0; i < listOfFiles.length; i++) {
        if (listOfFiles[i].isFile() && listOfFiles[i].getName().endsWith(".dylib")) {
            File lib = new File("OpenCV_lib/" + listOfFiles[i].getName());
            System.load(lib.getAbsoluteFile().toString());
        }
    }
}

来自“.../opencv-3.0.0/build/lib”的 openCV 库被复制到项目工作区中的文件夹 "OpenCV_lib" 以获得本地库的相对路径。

到运行导出的jar文件。导出的 jar 文件和包含库 (OpenCV_lib) 的文件夹必须在同一目录中。