# Beim erstellen einer .jar Datei wird fremde Library nicht erkannt



## Bibo1987 (21. Jan 2010)

Hallo liebe Java-Entwickler Kollegen.

Ich habe ein Problem beim Programmieren unter MAC OS X und einer Fremdlibrary.

Folgendes:
Die Library hat Probeme mit Rechten und 64Bit Betriebssystemen.
Deshalb habe ich im Vorfeld die Rechte der Library auf 777 geschaltet.

Undzwa:
Wenn ich auf meinem Mac Book Pro unter Netbeans das Programm laufen lasse (RUN) dann wird die Library nicht gefunden (no xxx in java.library.path)

Darauf hin bin ich unter "Projekt - Eigenschaften - Run" gegangen und habe dort folgendes Eingegeben:
Working Directory: /PfadZurLibrary/
VM Options: -d32

Wenn ich nun laufen lasse (RUN) dann wird die Library gelesen und mein Projekt wird richtig ausgeführt.

Nun möchte ich allerdings etwas haben, was die User, die das Programm nutzen sollen, ausführen, sprich eine .JAR.

Deshalb drück ich in NetBeans auf "Build".

Darauf hin wird im Projektordner ein dist Ordner erzeugt, in dem eine .JAR file drin ist und ein Ordner, der lib heißt.

So, die jar starte ich via Console: java -jar myTest.jar -d32
Excption: no xxx in java.library.path

So vom verständniss her, versteh ich das einfach nicht. Unter NetBeans funktioniert alles super gut, doch wenn ich eine Ausführbare Datei bekommen möchte, tut gar nichts mehr.

Ich bin für jeden Tip, der dieses Problem im Ansatz Eliminieren könnte, sehr dankbar, da ich schon seid Tagen daran sitze, dieses zu beheben.

Falls jemand Code-Schnippsels oder ähnliches haben möchte, dann bin ich gerade bereit dieses auszuhändigen.

Viele liebe Grüße
der Bibo

PS: Ich bin mir nicht sicher, ob mein Problem hier richtig ist. Falls nicht, bitte ich um entschuldigung.


----------



## Ebenius (21. Jan 2010)

Wenn ich mich nicht irre, dann müssen VM-Options im Java-Call for [c]-jar myTest.jar[/c] kommen. Alles was danach steht sind keine VM-Options sondern Programm-Argumente. Ergo: Funktioniert das Folgende?
	
	
	
	





```
java -d 32 -jar myTest.jar
```
HTH,Ebenius


----------



## Bibo1987 (21. Jan 2010)

Oh, Sorry!

Ja, das habe ich auch schon ausprobiert.

Ich habe das Java-File erstellt und dann via:

java -jar Main.jar -d32
auch mal so herrum
java -d32 -jar Main.jar

Versucht, und es funktioniert nicht.

Und ich bin mir mit 120% Sicher, das es irgendwie an den Export-Optionen von NetBeans liegen muss...

Folgende Optionen sind eingestellt:
Unter Projekt-Eigenschaften: Build - Packaging: Compress JAR FILE [TRUE]; Build JAR after Compiling [TRUE]

Die CheckBox "Compress JAR File" hab ich auch schon einmal ausgestellt und dann die Jar File mit java -d32 -jar Main.jar gestartet, mit dem gleichen Ergebniss:

no xxx in java.library.path

Ich versuche jetzt noch etwas weiter, das Problem zu Fixxen. 

Wenn ich die Lösung finden sollte, werde ich dieser natürlich hier Posten 

Viele liebe Grüße
der Bibo


----------



## Ebenius (21. Jan 2010)

Setz doch mal den library-path... 
	
	
	
	





```
java -Djava.library.path="/path/to/my/lib" -d32 -jar myTest.jar
```

Ebenius


----------



## Bibo1987 (21. Jan 2010)

Hi!

Also erstmal vielen Dank, Danke für die Hilfe!

Doch leider funktioniert das so auch nicht 

Ich habe mal folgendes versucht:

Eclipse geladen

Eclipse installiert

Source Code importiert

Als Executable Jar File exportiert

ausgeführt mit:


```
java -jar myMain.jar -d32
```

*Läuft!!!*

Die Exterme Library wird geladen. Gleich beim ersten Versuch...

Für mich allerdings, der von anbeginn der Zeit mit NetBeans programmiert (2 Jare?  ), steht die Fragen Offen: Warum es mit einer andere IDE gleich beim erstern Versuch funktioniert.

Ist bestimmt nur eine Einstellungssache...

Aufjedenfall Dank ich dir Ebenius 1000 mal für deine Antworten.

Viele liebe Grüße
der Bibo


----------



## Bibo1987 (21. Jan 2010)

//Nachtrag:

Ich hab schnell was nachgeguckt gehabt, warum das zum T***el das nicht unter NetBeans funktioniert.

Doch hab nichts gefunden.

Falls jemand mal den gleichen oder ähnliche Fehler hat, kann dieser jemand sich gerne bei mir Melden 

Grüße


----------

