软件版本和开发环境
大华SDK下载地址:https://support.dahuatech.com/tools/sdkExploit
软件版本
开发操作系统:Windows10-64位
服务器操作系统:linux 64位
sdk版本:设备网络SDK_JAVA_Linux64_V3.055.0000000.1.R.221027
我下载的是JAVA-win64和JAVA_Linux64版本(如果是用linux开发可以只下载linux版本,因为我本地是Windows,运行时有些包需要用到),所需dll文件以及配置文件全都在里面打包好了,并且官方的指导手册文档,写的都挺详细的,下面重点说一下,我在开发的一个流程。
环境变量
Windows版本的sdk是不需要配置环境变量的,但我们程序部署于linux时是需要配置环境变量的,配置如下:
export LD_LIBRARY_PATH= L D L I B R A R Y P A T H : ( l i b D P S D K J a v a . s o 所在目录绝对路径 ) : ( l i n u x j a v a 中的 l i b 目录绝对路径 ) e x p o r t C L A S S P A T H = LD_LIBRARY_PATH:(libDPSDK_Java.so所在目录绝对路径): (linuxjava中的lib目录绝对路径)export CLASSPATH= LDLIBRARYPATH:(libDPSDKJava.so所在目录绝对路径):(linuxjava中的lib目录绝对路径)exportCLASSPATH=CLASSPATH:(demo/src目录所在的绝对路径):(当前目录相对路径)
例如:
export LD_LIBRARY_PATH= L D L I B R A R Y P A T H : / r o o t / l i n u x j a v a / : / r o o t / l i n u x j a v a / l i b e x p o r t C L A S S P A T H = LD_LIBRARY_PATH:/root/linuxjava/:/root/linuxjava/lib export CLASSPATH= LDLIBRARYPATH:/root/linuxjava/:/root/linuxjava/libexportCLASSPATH=CLASSPATH:/home/linuxjava/demo/src/:./
安装大华jar包到本地maven库
# 因为maven官方仓库没有,所以需要自行手动安装,maven请添加环境变量(不添加的话就去maven的bin下面执行),然后在控制台执行如下指令,Dfile的内容是INetSDK.jar在你自己本地计算机的位置
mvn install:install-file -Dfile=D:\General_NetSDK\libs\INetSDK.jar -DgroupId=com.dahua.netsdk -DartifactId=dahua-netsdk-jni -Dversion=1.0.0 -Dpackaging=jar -DgeneratePom=true
导入大华SDK相关项目文件
- pom.xml导入大华的2个sdk 的依赖,以及在build下的添加一个resource,需要将动态库一起打包,不然服务运行的时候会找不到.dll文件
<!-- 大华摄像头sdk start -->
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<version>5.4.0</version>
</dependency>
<dependency>
<groupId>com.dahua.netsdk</groupId>
<artifactId>dahua-netsdk-jni</artifactId>
<version>1.0.0</version>
</dependency>
<!-- 大华摄像头sdk end -->
<build>
<resources>
<resource>
<directory>libs</directory>
<filtering>false</filtering>
<includes>
<include>**/*.dll</include>
</includes>
</resource>
</resources>
</build>
- 复制netsdk文件夹内所有内容到项目的com下(源文件在下载文件中的src文件夹内,复制netsdk文件夹至com路径下,保持跟原有项目同级,如下图)
- 复制配置文件
复制dynamic-lib-load.xml、res_en_US.properties、res_zh_CN.properties到resources下,源文件在下载文件中的res文件夹内,复制配置文件至项目中的resource路径下,源文件地址如下图)
- 修改netsdk项目部分文件
找到项目中的Res.java(路径:com/netsdk/common/Res.java)
修改项目中查询资源文件路径("res" 修改为 "resources"),如下图
文章来源:https://www.toymoban.com/news/detail-601548.html
Windows系统导入开发包
1. 打开刚刚下载的JAVA-win64,在libs\win64目录下找到dhnetsdk.dll、dhconfigsdk.dll、jninetsdk.dll,
win+R 输入 %temp% 后回车,然后把这三个文件复制到temp目录下
3. 官方开发包中的libs/win64整个文件夹复制到自己的项目的resources目录下
运行测试
找到官方提供的一个JniDemo(项目中路径为:\com\netsdk\demo\frame\JniDemo.java),直接运行
运行测试效果如下图
文章来源地址https://www.toymoban.com/news/detail-601548.html
到了这里,关于Java对接大华摄像头SDK的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!