UnsatisfiedLinkError导出dll以进行部署

时间:2014-04-24 00:41:38

标签: java eclipse dll jna

我正在尝试从我的项目中构建一个Runnable Jar文件,但是两行代码导致了问题。

在我的项目中,我使用JNA对我制作的.dll文件进行一些函数调用,但我无法正确链接。

我可以在eclipse中构建和运行应用程序没问题,我也可以创建一个可运行的jar,但是当我尝试运行它时我得到了这个错误:

UnsatisfiedLinkError: no kl in java.library.path

kl是我的.dll文件的名称。

以下是我如何加载它:

private Dll dll; 

System.loadLibrary("kl");
dll = (Dll) Native.loadLibrary("kl", Dll.class);

.dll文件当前位于我项目的根目录中。我认为是导致大多数问题的System.loadLibrary,我需要它在主根文件夹中查看,无论谁在运行我的jar文件。

谢谢

1 个答案:

答案 0 :(得分:1)

尝试使用-Djava.library.path运行java:

java -Djava.library.path = directory_where_your_library_is main_class