DLLs werden nicht gefunden trotz Pfad:

Ulathar

Aktives Mitglied
Hallo,
ich weiß es gibt bereits ettliche Themen rund um DLLs in Java einbinden, aber so seltsam es auch klingt, es will ums verrecken nicht klappen.
Ich sitze da nun schon Tage dran!

Das Problem ist folgendes:

Ich habe ein recht umfangreiches Programm welches auf JOGL basiert. In Eclipse funktioniert dies auch einwandfrei.

Nun will ich dieses Programm aber releasen und benötige dafür ein runable Jar. Das Problem hierbei ist nun die sache mit den DLLs, keine Sorge, mir geht es NICHT um das Extrahieren und anschließende Laden von dlls aus einem Jar, ich weiß dass das nur auf Umwegen möglich ist.

Obwohl die dlls im selben Ordner liegen wie mein JAR-File, werden diese NICHT gefunden/geladen.

Ich habe es mit System.loadLibrary(lib) probiert.
Ich habe es mit System.load(pfad+lib) probiert.
Ich habe es mit java -Djava.library.path=bla probiert.

Ich habe so ca alles probiert was ich hier dazu gefunden habe, aber es will einfach nicht. Wenn ich via System.load oder loadlib die jeweiligen libs lade, scheint alles okay zu sein (keine Fehler), aber sobald ich dann auf Funktionen in meinem Programm ausführe, die auf JOGL basieren, knallts mit der Meldung, dass keine jogl lib im java.library.path liegen würde, selbst dann, wenn ich die 1 zeile vor dem Funktionsaufruf noch mal via System.load lade.

Wenn ich den lib path via -Djava.library.path=bla auf den Ordner der Libs setzen will, bekomme ich auf der Console nur ne ClassNotFound meldung (mit ausgabe des neu gewählten Pfades).

Es ist mir ein absolutes Rätsel und ich kau langsam aber sicher an der Tischkante -.-.


Hat irgendjemand eine Idee?


EDIT:
OS ist W7 64 Bit, VMs sind JRE6 x86 und JR6 x64 (führe das Programm in der x86er aus da die libs 32 Bit sind).

Jar liegt in e:\Coding\SAFI\SAFI.jar
Libs liegen in e:\Coding\SAFI
 

Ulathar

Aktives Mitglied
wie gesagt:

der normale code hat weder n System.loadlib noch load.
Das klappt aber nur so lang ich das Programm aus Eclipse heraus starte.

Da die Arbeiten nun aber abgeschlossen und das Programm in eine "releasebare Form" gebracht werden muss haben sich die neuen Probleme ergeben :(.

Und wie oben erwähnt, scheint keine der 3 gängigen Mittel zu helfen. Ich schau mir jetzt mal deinen Link an, danke.


Edit:

Ok der Link hat nich weitergeholfen, bzw ist nicht mein Problem. In Eclipse funktioniert ja alles wunderbar, das problem ist dass er die DLLs nicht findet wenn mans als runable JAR exportiert (obwohl die dlls direkt neben dem JAR liegen).
 
Zuletzt bearbeitet:
G

Guest2

Gast
Moin,

ich lad die jogl dlls im Zweifelsfall so. Als "AllesInEins.jar" lässt sich das dann sauber per Doppelklick starten. Man muss halt nur vorher noch das OS abfragen und dann die richtigen dlls laden. Wichtig ist, dass das unbedingt passiert, bevor die erste jogl Klasse geladen wurde, sonnst isses zu spät.

Beliebter Fehler ist:

Code:
public class T implements GLEventListener {
...
public static void main(String args[]){
	System.load(..) // schon zu spät...

Gruß,
Fancy
 

Ulathar

Aktives Mitglied
Okay habe die Problemursache gefunden, es liegt nicht an der Art und weise wie ich meine DLLs lade, sondern daran, dass auf meinem System eine x86 und eine x64 Java VM installiert ist.

Normalerweise entwickel ich in der x64 Umgebung, was aber auf grund von 32Bit dlls bei meinem JOGL programm nicht möglich ist (aus Eclipse heraus startet das Projekt immer in der x86 VM).

Aus irgend einem mir absolut unerklärlichem Grund erkennt die x86 VM den Working Directory nicht korrekt, also wenn ich via console das JAR starte mit der x86 VM ist der working directory nicht der ordner in dem das JAR liegt sondern der in dem die java.exe (also jre6/bin) liegt.

Aus diesem Grund findet er natürlich nicht die Libs....


Bleiben 2 Fragen offen:

1. wieso kann ich mit -Djava.library.path nicht den Pfad entsprechend mit übergeben? (erhalte immer class not found exceptions)

2. wieso findet mein programm trotz System.load(direkterpfadzurlib) die DLLs nicht? (die dateien selbst werden gefunden und somit wohl auch geladen, aber JOGL crasht dann mit ner unsatisfiedlink exception von wegen kein jogl gefunden etc pp so als hätte ich die libs nicht geladen).
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Dann07 Java-Programm findet DLLs nicht! Allgemeine Java-Themen 20
U Classpath DLLs mittels System.load() laden: Allgemeine Java-Themen 6
R JNI-Dlls aus dynamischen Wrapper-Klassen laden Allgemeine Java-Themen 14
D .dlls mit Java verwenden Allgemeine Java-Themen 2
M JNI mit vorhandenen libs oder dlls verwenden Allgemeine Java-Themen 2
D dlls und jar archive Allgemeine Java-Themen 4
H Pfade von DLLs festlegen Allgemeine Java-Themen 2
R Signieren von Java-Prog. oder Applets - Zugriff auf dlls Allgemeine Java-Themen 8
P DLLs nutzen Allgemeine Java-Themen 3
P Fehler: Hauptklasse Main konnte nicht gefunden oder geladen werden Ursache: java.lang.ClassNotFoundException: Main Allgemeine Java-Themen 24
berserkerdq2 Weiß jemand wie ich im Scenebuilder das Fenster so darstellen kann, dass beim Vollbildmodus die Objekte so angezeigt werden? Allgemeine Java-Themen 1
D Erste Schritte Mp3 Datei kann nicht von der Festplatte geöffnet werden - mit ChatGPT erstellt Allgemeine Java-Themen 7
I OpenPDF erzeugt riesige PDFs, wenn Grafiken über PdfGraphics2D#drawImage gezeichnet werden Allgemeine Java-Themen 1
kodela String kann nicht zu Pfad konvertiert werden Allgemeine Java-Themen 16
Momo16 Brauche Hilfe - Java Projekt kann nicht erstellt werden Allgemeine Java-Themen 12
M Input/Output FileChannel writes / werden diese gecached vom OS und dann erst geschrieben? Allgemeine Java-Themen 6
Tiago1234 Hauptklasse konnte nicht gefunden oder geladen werden Allgemeine Java-Themen 38
W Bilder werden in App mit Jar-Datei nicht angezeigt Allgemeine Java-Themen 15
Z macOS java konnte nicht entfernt werden xpc verbindungsfehler Allgemeine Java-Themen 4
AleXusher Hauptklasse startlösung konnte nicht gefunden oder geladen werden Allgemeine Java-Themen 1
ReinerCoder auskommentierte Messages werden trotzdem benutzt Allgemeine Java-Themen 53
MiMa Wie sollte am besten ein Datum gespeichert werden? Allgemeine Java-Themen 8
J Hilfe, Jar Datei kann nicht ausgeführt werden Allgemeine Java-Themen 2
Elyt Compiler-Fehler Datei kann nicht erstellt werden. Die Syntax für den Dateinamen etc. ist falsch. Allgemeine Java-Themen 2
W Dateien werden nicht gelöscht - warum? Allgemeine Java-Themen 12
A Eclipse Hauptklasse konnte nicht gefunden oder geladen werden Allgemeine Java-Themen 7
Drachenbauer Wie kann eine vorgegebene Farbe über einen String erkannt werden? Allgemeine Java-Themen 11
I Modelio kann nicht geöffnet werden Allgemeine Java-Themen 3
J Message Box soll bei bestimmter Zeit angezeigt werden Allgemeine Java-Themen 19
ReinerCoder Klasse kann nicht public deklariert werden Allgemeine Java-Themen 2
MiMa Datei kann nicht umbenannt oder verschoben werden ?? Allgemeine Java-Themen 17
M JDBC DATE 0000-00-00 kann nicht ausgegeben werden Allgemeine Java-Themen 3
The Pi NetBeans Bilder in Jar Datei werden nicht angezeigt Allgemeine Java-Themen 7
J Bei einer Zufallsausgabe werden zu viel Ergebnisse ausgegeben Allgemeine Java-Themen 16
Asphorm Datentypen Datentypen werden nicht ordnungsgemäß umgewandelt Allgemeine Java-Themen 1
C Eclipse einstellen, dass eine bestimmte JDK benutzt werden soll Allgemeine Java-Themen 3
P Datentypen Bilder werden in ausführbarer JAR nicht angezeigt Allgemeine Java-Themen 6
I nach Image Load in ListView, kann Ordner nicht mehr gelöscht werden Allgemeine Java-Themen 1
B Bild aus Jar kann nach Export nicht mehr gefunden werden Allgemeine Java-Themen 13
B AES kann nicht entschlüsselt werden Allgemeine Java-Themen 5
J .exe Dateien werden nicht gestartet obwohl Pfad richtig Allgemeine Java-Themen 6
N Anwendungsfehler(kann nicht gestartet werden...) Allgemeine Java-Themen 30
E Hauptklasse konnte nicht gefunden werden Allgemeine Java-Themen 13
J beans.instantiate(): Klasse kann nicht instanziiert werden Allgemeine Java-Themen 2
G Methoden Aus einem Event, wo ich weiß, dass es ausgeführt werden wird, eine Get-Methode basteln Allgemeine Java-Themen 8
D Java Permutationen werden zu lange berechnet Allgemeine Java-Themen 3
D Java Error String kann nicht in Int umgewandelt werden Allgemeine Java-Themen 2
ms_cikar Java Excel bearbeiten spalten werden überschrieben. Allgemeine Java-Themen 4
M Ein Programm das nur von einem bestimmten Programm geöffnet werden kann Allgemeine Java-Themen 7
T Umlaute werden falsch gedruckt Allgemeine Java-Themen 2
M Windows 98 - Mit welchem JDK (Version) kann noch Programm dafür erstellt werden Allgemeine Java-Themen 6
B Eclipse Nach Export einer .jar Fehler: Hauptklasse konnte nicht gefunden oder geladen werden Allgemeine Java-Themen 5
M Eclipse - Fehler: Hauptklasse de.xyz.init.MeineKlasse konnte nicht gefunden oder geladen werden Allgemeine Java-Themen 2
M Methoden werden in falscher Reihenfolge bearbeitet Allgemeine Java-Themen 10
L Nullpointer Exceptions werden nicht angezeigt Allgemeine Java-Themen 5
Thallius Serialisiertes File kann auf anderem Rechner nicht geladen werden Allgemeine Java-Themen 12
S Threads Threads werden nicht beendet Allgemeine Java-Themen 2
D Input/Output Zeilen werden "ignoriert" beim Einlesen aus einer Textdatei Allgemeine Java-Themen 3
B Input/Output version.cfg konnte nicht im Klassenpfad gefunden werden, ist aber dort. Allgemeine Java-Themen 0
O Klassen Programm in Klassen unterteilt, werte werden nicht mehr übernommen Allgemeine Java-Themen 3
T Static kann nicht verändert werden Allgemeine Java-Themen 3
L iText PDF Form-Felder werden nach Bearbeitung mit iText nicht mehr richtig erkannt. Allgemeine Java-Themen 2
J Datei kann nicht geladen werden... Allgemeine Java-Themen 18
Zettelkasten JAR-Datei kann bei Freund auch nicht mit CMD ausgeführt werden Allgemeine Java-Themen 4
S OOP Apache Commons Math - Verwendung von Genetics - Wie werden Daten in Chromosomen gespeichert? Allgemeine Java-Themen 4
O Klassen werden nicht importiert Allgemeine Java-Themen 3
C .Ini-Datei Wert Änderungen werden nicht angenommen Allgemeine Java-Themen 3
M Startdatei konnte nicht geparst werden. Fehler in Zeile 0 Allgemeine Java-Themen 5
R Bild offenbar zu groß um geladen zu werden? Allgemeine Java-Themen 12
C Prozesssteuerung - Speicherhungrige externe Programme werden blockiert Allgemeine Java-Themen 2
A Input/Output generiertes PDF kann nicht geöffnet werden Allgemeine Java-Themen 2
U Fehler: Hauptklasse org.junit.runner.JUnitCore konnte nicht gefunden oder geladen werden Allgemeine Java-Themen 2
F Kompilierfehler - Hauptklasse konnte nicht gefunden werden Allgemeine Java-Themen 4
O Gucken, ob bereits Töne (von wild fremden Programmen) ausgegeben werden Allgemeine Java-Themen 5
N verdeckte Fenster werden im Vordergrund gezeichnet Allgemeine Java-Themen 6
Dit_ ThreadPoolExecutor | Die Aufgaben sollen reihe nach bearbeitet werden Allgemeine Java-Themen 6
S Swing JPanel werden nicht angezeigt Allgemeine Java-Themen 6
J Welche Informationen werden beim Kompilieren gespeichert? Allgemeine Java-Themen 3
Z Java kann nicht installiert werden Allgemeine Java-Themen 30
C Drag & Drop, Icons sollen getauscht werden Allgemeine Java-Themen 4
L Entscheiden, welcher Code ausgeführt werden soll Allgemeine Java-Themen 7
D JVM kann nicht über die jvm.dll gestartet werden? Allgemeine Java-Themen 1
M Nach Programmdurchlauf werden Zeichen falsch dargestellt + Anderes Verhalten unter Windows Allgemeine Java-Themen 6
K Von SD-Card-Einschub unterrichtet werden - wie? Allgemeine Java-Themen 2
D NetBeans Bibliothek kann nicht genutzt werden Allgemeine Java-Themen 5
T JConsole: Klassen werden geladen aber nicht wieder entladen Allgemeine Java-Themen 3
T Threads werden nicht beendet Allgemeine Java-Themen 22
R in .jar werden files nicht gefunden!!! Allgemeine Java-Themen 5
dayaftereh JPG Kann nicht geladen werden! Allgemeine Java-Themen 9
C Kopieren von Dateien die von einem anderen Programm verwendet werden? Allgemeine Java-Themen 7
O Backslashes werden in der Ausgabe nicht übernommen Allgemeine Java-Themen 5
E Bitcode liegt vor und soll gespiegelt werden Allgemeine Java-Themen 4
S Mittels eines Applets Bilder generieren die in einer Webseite angezeigt werden..? Allgemeine Java-Themen 8
D Wie werden Regex-Gruppen kompiliert? Allgemeine Java-Themen 2
A Beim Kopieren werden Bilder verfälscht Allgemeine Java-Themen 3
C Eingegebene Werte werden nicht gezeichnet Allgemeine Java-Themen 2
Developer_X JButtons werden nicht angezeigt Allgemeine Java-Themen 26
M Nach export in jar datei werden Datein nicht eingelesen Allgemeine Java-Themen 7
B Klassen werden nicht gefunden Allgemeine Java-Themen 6
J Wo werden die System properties gespeichert Allgemeine Java-Themen 12

Ähnliche Java Themen

Neue Themen


Oben