我有同样的问题,如下面这篇文章。但答案对我来说并不适用。 我希望像这样的链接是可以的。
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?
由于
答案 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)必须位于同一目录中。