最近由于项目需球,需要调用海康的摄像头,因为除了java对其他语言不是很了解,所以从官网下载了 java 的SDK试下运行。按照官方给的文档配置,
没想到遇到一个错误:
Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'lib\HCNetSDK': ÕҲ»µ½ָ¶¨
上网各种搜索百度,发觉大家都有这个问题,有人说要换32位的系统或者jdk只能1.6版本。但是解决方法都是不太可取,经过多方折腾最后还是解决了。运行环境是netbeans 8.0 ,系统64位,SDK也是64位(多少位数系统就用多少位数的SDK)。
多得了看了这一篇博客的知识分享:https://blog.csdn.net/redfoxtao/article/details/78069684
一、前期准备
下载netbeans 8.0 ,上官网下载64位的SDK。
二、配置环境
(1) import导入的项目,找到如下图所示的路径打开
(2)将“HCNetSDKCom”目录、“HCNetSDK.dll”、“PlayCtrl.dll”、“AudioRender.dll”、 “D3DCompiler_43.dll”、“d3dx9_43.dll”、“EagleEyeRender.dll”、“GdiPlus.dll”、 “HCCore.dll”、“HWDecode.dll”、“libmmd.dll”、“MP_Render.dll”、“SuperRender.dll”、 “YUVProcess.dll”这些文件拷贝到工作目录下,如下图所示
(3)修改“manifest.mf”文件中的类路径,如下图所示:
(4)修改“HCNetSDK.java”中关于“HCNetSDK”及“PlayCtrl”的路径到本地工作目录,如下图所示:
(这个路径找到类)
修改动态库加载途径
(5)点击项目,右击属性检查运行环境(我的项目路径为D:\CH-HCNetSDK(Windows64)V5.3.1.22_build20170909\Demo示例\4- Java 开发示例\ClientDemo-NetBeansPro)
(6)运行成功,输入ip地址密码即可实行摄像头调用。