eclipse上报这个错,百度了很久,尝试过很多方法,终于解决
Exception in thread "main" java.lang.UnsatisfiedLinkError: no jniopencv_core in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.googlecode.javacpp.Loader.loadLibrary(Loader.java:593)
at com.googlecode.javacpp.Loader.load(Loader.java:489)
at com.googlecode.javacpp.Loader.load(Loader.java:431)
at com.googlecode.javacv.cpp.opencv_core.<clinit>(opencv_core.java:136)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.googlecode.javacpp.Loader.load(Loader.java:453)
at com.googlecode.javacv.cpp.opencv_imgproc.<clinit>(opencv_imgproc.java:97)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.googlecode.javacpp.Loader.load(Loader.java:453)
at com.googlecode.javacv.cpp.opencv_objdetect.<clinit>(opencv_objdetect.java:97)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.googlecode.javacpp.Loader.load(Loader.java:453)
at com.googlecode.javacpp.Loader.load(Loader.java:431)
at com.googlecode.javacv.cpp.opencv_objdetect$CvHaarClassifierCascade.<clinit>(opencv_objdetect.java:176)
at FaceRecognizer.<init>(FaceRecognizer.java:106)
at LoginShell$3.widgetSelected(LoginShell.java:104)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:228)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3910)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3503)
at LoginShell.main(LoginShell.java:43)
Caused by: java.lang.UnsatisfiedLinkError: no opencv_core245 in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.googlecode.javacpp.Loader.loadLibrary(Loader.java:593)
at com.googlecode.javacpp.Loader.load(Loader.java:481)
... 23 more
- 配置OpenCV要放在c盘根目录处(不然配置Javacv时会失效)
- eclipse要配置环境变量到path中 C:\opencv\build\java\x64
- vs要配置环境变量到path中 C:\opencv\build\x64\vc11\bin
到此还是没能解决报错
- 导包,不能只导Javacv.jar和javacpp.jar。JavaCV0.6中bin下的包都要导进来,如下图所示。
还是错,终于得用杀手锏了(这是我最不愿意尝试的)
- OpenCV与Javacv版本不匹配的问题
- 换成OpenCV2.4.6与Javacv0.6版本
- 完美 解决
我在网上找了许久,官网已经找不到这些老版本的下载了,后来去的优快云下载的
至于为什么要用这么老的版本,也是有原因的,我在网上看的别人代码学习,其中要用到一些包,比如import static com.googlecode.javacv.cpp.opencv_core.*,这些居然用JavaCV1.2和JavaCV1.5都没有用,换了很多版本,实在没办法,直接按照网上说的,换到JavaCV0.6