Native.loadLibrary Caused by: java.lang.UnsatisfiedLinkError: Unable to load library

来源:互联网 发布:双色球黄金分割算法 编辑:程序博客网 时间:2024/05/17 22:46

JAVA Native加载dll库,把库路径换成绝对路径还是出现下面的问题

Caused by: java.lang.UnsatisfiedLinkError: Unable to load library XXX

找了半天原因,原来是绝对路径的分隔符有问题。

String classpath = Thread.currentThread().getContextClassLoader().getResource("/").getPath();

这样获取的路径在windows操作系统下面分隔符是/,需要替换成“\”

需要做如下处理:

String path = classpath.substring(1,classpath.indexOf("classes")).replace("/", File.separator)+"lib"+File.separator+"hcnetsdk"+File.separator+"HCNetSDK";


hCNetSDK = (HCNetSDK) Native.loadLibrary(path, HCNetSDK.class);


0 0
原创粉丝点击