BDiegelmann
Grünschnabel
Hi zusammen,
bin gerade dabei, eine native DLL mit der Option "Bundle-NativeCode" in der Manifestdatei zu laden. Das scheint soweit auch gut zu funktionieren. Das Problem ist nur, das diese DLL weitere DLLs benötigt. Diese werden dann aber nicht mehr gefunden wenn ich das so mache.
Jetzt hab ich versucht die entsprechenden DLLs auch über native code zu laden, aber auch das schlägt fehl. Hab keine Ahnung wo (in welchem Pfad) das Framework die Dateien sucht.
Kann mir da jemand helfen?
Das ist die Manifest Datei:
Im Anhang befindet sich der Inhalt des JAR-Archivs.
Hab weitere Versuche unternommen um das Bundle ans Leben zu bringen.
Habe mir die Sourcen besorgt die die DLL laden. Dort habe ich den Befehl System.loadLibrary() auskommentiert da dies ja vom Framework gemacht werden soll (Wenn ich das richtig verstanden habe).
Nun bekomme ich einen Ecxeption:
java.lang.UnsatisfiedLinkError
Ich denke, dass das Framework jetzt die DLL gar nicht geladen hat. Oder was bedeutet die Exception?
bin gerade dabei, eine native DLL mit der Option "Bundle-NativeCode" in der Manifestdatei zu laden. Das scheint soweit auch gut zu funktionieren. Das Problem ist nur, das diese DLL weitere DLLs benötigt. Diese werden dann aber nicht mehr gefunden wenn ich das so mache.
Jetzt hab ich versucht die entsprechenden DLLs auch über native code zu laden, aber auch das schlägt fehl. Hab keine Ahnung wo (in welchem Pfad) das Framework die Dateien sucht.
Kann mir da jemand helfen?
Das ist die Manifest Datei:
Code:
Manifest-Version: 1.0
Bundle-Description: Treiber fuer die PC104 CAN-Card von Peak
Bundle-Name: CAN-Driver
Bundle-ClassPath: ., pcanlight_jni.jar
Bundle-Activator: edag.can.controller.peak.Activator
Import-Package: org.osgi.framework, org.osgi.service.log
Bundle-Vendor: EDAG
Bundle-SymbolicName: canDriver
Bundle-Version: 1.0.0
Bundle-NativeCode: pcanlight_jni.dll;processor="x86";osname="WindowsXP", PCAN_2ISA.dll;processor="x86";osname="WindowsXP", PCAN_ISA.dll;processor="x86";osname="WindowsXP"
Im Anhang befindet sich der Inhalt des JAR-Archivs.
Hab weitere Versuche unternommen um das Bundle ans Leben zu bringen.
Habe mir die Sourcen besorgt die die DLL laden. Dort habe ich den Befehl System.loadLibrary() auskommentiert da dies ja vom Framework gemacht werden soll (Wenn ich das richtig verstanden habe).
Nun bekomme ich einen Ecxeption:
java.lang.UnsatisfiedLinkError
Ich denke, dass das Framework jetzt die DLL gar nicht geladen hat. Oder was bedeutet die Exception?
Anhänge
Zuletzt bearbeitet: