2017-03-10 12 views
0

Ich versuche ein Jar für eine Bibliothek zu laden, die ursprünglich in C++ geschrieben wurde, aber auch native Bindings für Java hat. Ich machte das durch swig, und es erstellte die folgenden Dateien für mich - enter image description herejava.lang.UnsatisfiedLinkError beim Laden von libRETS jar

Die Datei von Interesse für mich war librets.jar (in der dritten Spalte unter dem librets-Verzeichnis). Ich importierte es in einem Testprojekt in Java, und im Anschluss an die Dokumentation, schrieb ich das folgende Stück Code:

package test; 
import librets.*; 

public class Test { 
    public static void main(String[] args) throws RetsHttpException, RetsReplyException, RetsException { 
     System.out.println("Hello world!"); 
     RetsSession session = new RetsSession("http://demo.crt.relators.org:6103/rets/login"); 
    } 
} 

Nun, wenn ich dies ausführen, bekomme ich die folgende Laufzeitausnahme, und ich habe keine Hinweis:

Hello world! 
Exception in thread "main" java.lang.UnsatisfiedLinkError: librets.libretsJNI.swig_module_init()V 
    at librets.libretsJNI.swig_module_init(Native Method) 
    at librets.libretsJNI.<clinit>(libretsJNI.java:787) 
    at librets.RetsSession.<clinit>(RetsSession.java:225) 
    at test.Test.main(Test.java:7) 

Irgendwelche Hilfe, was könnte der Grund sein?

Antwort

0

https://www.chilkatsoft.com/java-loadLibrary-MacOSX.asp Link hat mir geholfen, die Lösung zu finden. Alles, was ich tun musste, war die .jnilib Datei über System.load in meinem Code.

package test; 
import librets.*; 

public class Test { 

    static { 
     try { 
      System.load("/Users/Rai/Softwares/libRETS/build/swig/java/liblibrets.jnilib"); 
     } catch (UnsatisfiedLinkError e) { 
      System.err.println("Native code library failed to load.\n" + e); 
      System.exit(1); 
     } 
     } 

    public static void main(String[] args) throws RetsHttpException, RetsReplyException, RetsException { 
     System.out.println("Hello world!"); 
     RetsSession session = new RetsSession("http://demo.crt.relators.org:6103/rets/login"); 
    } 
} 
Verwandte Themen