1

Windows で Java プログラムが次のエラーで失敗します。

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 の場所をシステムのパス環境変数に追加する
  • 以下のようにプログラムで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 を認識しません (つまり、ロードします) が、他の多くの DLL を処理する必要があります。それも。

誰でもこの動作に光を当てることができますか? ところで、Eclipse が C:\Program Files\Java\jre6\bin を選択して java.library.path に追加している場所を特定することもできません。システムのパス環境変数の一部ではありません。

4

1 に答える 1

1

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

ここに画像の説明を入力

于 2012-01-24T18:59:43.930 に答える