java.lang.NoClassDefFoundError: Could not initialize class ****.DaHuaSdkMain 一个很深很深的坑!记录一次
本次项目是springboot 外加集成大华的SDK,做视频监控对接!
项目启动之处需要对大华SDK做一次初始化操作。所以在初始化中我是实现了
public class ApplicationInit implements CommandLineRunner,ApplicationListener<ApplicationEvent>
这个方法是监听程序初始化后再初始化SDK。
SDK的代码的是这样的
public interface NetSDKLib extends Library {
NetSDKLib NETSDK_INSTANCE = (NetSDKLib) Native.load(SdkUtils.getLoadLibrary(GateClientConstant.CLIENT_TYPE.DAHUA,"dhnetsdk"), NetSDKLib.class);
NetSDKLib CONFIG_INSTANCE = (NetSDKLib) Native.load(SdkUtils.getLoadLibrary(GateClientConstant.CLIENT_TYPE.DAHUA,"dhconfigsdk"), NetSDKLib.class);
在loadLib中我是从spring中获取配置信息。获取到配置信息才能初始化Native.load 如下面代码:
public static String getLoadLibrary(GateClientConstant.CLIENT_TYPE type, String library) {
String sdkPath="";
log