no jniopencv_core in java.library.path与no opencv_core245 in java.library.path

本文详细记录了解决Eclipse中使用OpenCV遇到的“no jniopencv_core in java.library.path”错误的过程,包括调整环境变量、更换OpenCV与JavaCV版本及导入正确库文件的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

  1. 配置OpenCV要放在c盘根目录处(不然配置Javacv时会失效)
  2. eclipse要配置环境变量到path中 C:\opencv\build\java\x64
  3. vs要配置环境变量到path中 C:\opencv\build\x64\vc11\bin

到此还是没能解决报错

  1. 导包,不能只导Javacv.jar和javacpp.jar。JavaCV0.6中bin下的包都要导进来,如下图所示。
    在这里插入图片描述

还是错,终于得用杀手锏了(这是我最不愿意尝试的)

  1. OpenCV与Javacv版本不匹配的问题
  2. 换成OpenCV2.4.6与Javacv0.6版本
  3. 完美 解决

我在网上找了许久,官网已经找不到这些老版本的下载了,后来去的优快云下载的

至于为什么要用这么老的版本,也是有原因的,我在网上看的别人代码学习,其中要用到一些包,比如import static com.googlecode.javacv.cpp.opencv_core.*,这些居然用JavaCV1.2和JavaCV1.5都没有用,换了很多版本,实在没办法,直接按照网上说的,换到JavaCV0.6

放链接:JavaCV-0.6-bin下载 OpenCV2.4.6.exe下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值