Eclipse(Helios)无法加载DLL

我的Java程序失败,在Windows上出现以下错误。

Exception in thread "main" java.lang.UnsatisfiedLinkError: no XSvcSocket in java.library.path at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) 

我尝试了不同的东西

  • DLL的位置添加到系统的pathenvvariables
  • 在程序中显式设置DLL的位置如下

      String libpath = System.getProperty("java.library.path"); libpath = "C:\\extlibs;" + libpath; System.setProperty("java.library.path", libpath); libpath = System.getProperty("java.library.path"); 

我看到的java.library.path如下所示。

 "Lib Path: C:\extlibs;C:\Program Files\Java\jre6\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows" 

有问题的DLL在“C:\ extlibs”中可用。 几个观察是,当我把DLL放到“C:\\ Program Files \ Java \\ jre6 \ bin”,我的程序不会关于DLL(即加载它)的crib,但我必须照顾许多其他的DLL太。

任何人都可以阐明这种行为? 顺便说一句,我也无法弄清楚从哪里挑选C:\ Program Files \ Java \ jre6 \ bin并添加到java.library.path? 它不是系统path环境variables的一部分。

    在eclipse中添加本地库的正确方法如下所示。 转至Properties/Java Build Path/Libraries/Expand the jar file for which you want to add the native library/Select Native Library location/Click Edit/Add the DLL

    在这里输入图像描述