当前位置:  开发笔记 > 编程语言 > 正文

使用想法使用程序将dll库添加到java

如何解决《使用想法使用程序将dll库添加到java》经验,为你挑选了1个好方法。

我正在尝试添加并使用一个名为JVLC的程序到我的程序中.我下载了一个zip文件,其中包含用于java接口的jar文件(jvlc.jar)和2个dll文件(jvlc.dll,libvlc.dll)以及包含许多dll文件的文件夹.当我运行我的程序时,会出现UnsatisfiedLinkError.我用这段代码将这两个dll文件添加到我的项目中.

System.loadLibrary("C:\\Users\\sajad\\Documents\\Downloads\\Compressed\\JVLC\\jvlc.dll");
System.loadLibrary("C:\\Users\\sajad\\Documents\\Downloads\\Compressed\\JVLC\\libvlc.dll");

但仍然有错误:

UnsatisfiedLinkError:目录分隔符不应出现在库名称中

是否有必要将所有文件夹添加到库路径?如果有,怎么样?

请指导我.



1> Buhake Sindi..:

System.loadLibrary方法基于库名称(libName,没有扩展名)而不是通过文件名加载库.例如,Java附带了一个zip.dll/zip.so(Linux),当我们使用Zip Deflater/Inflater类来获取zip文件时使用它.

如果要使用指定dll文件名,请使用该System.load(String filename)方法,在java lib路径中注册DLL.

这里可以找到一个例子.


举个例子,请这样做:

//Your code....
System.loadLibrary("C:\\Users\\sajad\\Documents\\Downloads\\Compressed\\JVLC\\jvlc.dll");
System.loadLibrary("C:\\Users\\sajad\\Documents\\Downloads\\Compressed\\JVLC\\libvlc.dll");

//Replace with this...
System.load("C:\\Users\\sajad\\Documents\\Downloads\\Compressed\\JVLC\\jvlc.dll");
System.load("C:\\Users\\sajad\\Documents\\Downloads\\Compressed\\JVLC\\libvlc.dll");

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有