openCV lib的可执行jar(Eclipse,Mac)

时间:2015-08-24 22:38:56

标签: java eclipse macos opencv executable-jar

我有同样的问题,如下面这篇文章。但答案对我来说并不适用。 我希望像这样的链接是可以的。

How to package opencv +java in a jar

我正在加载我的opencv lib:

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

在Eclipse中,我链接了opencv的nativ lib。 一切正常,直到我尝试导出一个jar文件。

可能是因为原生lib没有导出。 在我的Mac上,我在这里有本机库: / Java Libraries / opencv / opencv-3.0.0 / build / lib

有没有人知道如何从上面的链接更改代码,以便导出本机lib?

由于

1 个答案:

答案 0 :(得分:2)

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

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文件和包含libs的文件夹(OpenCV_lib)必须位于同一目录中。