解决了这个
static{
String osName = System.getProperty("os.name");
String opencvpath = System.getProperty("user.dir");
if(osName.startsWith("Windows")) {
int bitness = Integer.parseInt(System.getProperty("sun.arch.data.model"));
if(bitness == 32) {
opencvpath=opencvpath+"\\opencv\\x86\\";
}
else if (bitness == 64) {
opencvpath=opencvpath+"\\opencv\\x64\\";
} else {
opencvpath=opencvpath+"\\opencv\\x86\\";
}
}
else if(osName.equals("Mac OS X")){
opencvpath = opencvpath+"Your path to .dylib";
}
System.out.println(opencvpath);
System.load(opencvpath + Core.NATIVE_LIBRARY_NAME + ".dll");
//nu.pattern.OpenCV.loadShared();
//System.loadLibrary(org.opencv.core.Core.NATIVE_LIBRARY_NAME);
}
在检查各种参数时,发现os.name返回了WINDOWS。user.dir返回eclipse根目录,sun.arch.data.model返回64。然后,根据此代码,我在eclipse根目录中创建必要的文件夹,并将最新的opencv dll粘贴在该目录中。但是现在另一个问题是代码正在搜索dll的较旧版本,并且不接受该较新版本。 问题是由于以下事实:内置库正在使用旧版本的opencv,而我正在尝试使用最新版本。因此,我不得不从该库和tada的maven依赖项中排除opencv的先前版本,从而解决了问题。