2
我有一个Java应用程序,它必须加载一个具有一些依赖关系的DLL。我将所有需要的DLL复制到同一个文件夹中。我设置的DLL使用SeeingMachine FaceApi库。现在,当我启动Java应用程序时,我将得到一个错误,我的DLL无法找到依赖关系:如何解决Java JNI DLL依赖关系
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Users\[..]\bin_dbg\HeadTrackerDLL.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at Tracker.<clinit>(Tracker.java:12)
at TrackerControls.<init>(TrackerControls.java:18)
at Main.main(Main.java:6)
我该如何解决问题?因为Dependency Walker没有显示任何错误。我不想手动加载所有DLL文件。
请包括运行java的命令行/脚本,确认你的'library.path'设置为什么,并且所有库都在该路径上。 – 2009-09-02 15:48:48
您是否在启动应用程序时指定了java库路径? – 2009-09-02 15:54:13
我设置这条线到Eclipse VM参数字段: -Djava.library.path = $ {workspace_loc}/bin_dbg/HeadTrackerDLL 还我试图 -Djava.library.path = $ {workspace_loc}/bin_dbg 但没有用。 – sn3ek 2009-09-02 16:06:45