# Externe Bibliotheken in Projekt einbinden



## Frank the B. (31. Mrz 2010)

Hallo,
also wir haben folgendes Problem: Wir haben ein bestehendes JavaME Projekt (Sony SDK, Eclipse Galileo) und wollen nun eine Jar File als "Reference Library" hinzufügen. Das klappt auch wunderbar und im Build Path wird sie auch ohne Probleme "erkannt" und hinzugefügt. Compiliert wird das ganze (also das Projekt mit Klassen dann aus der Jar) auch ohne Probleme.
Wenn wir das dann aber starten wollen (also die startApp Methode aus der Hauptklasse) dann kommt immer folgender Fehler:

```
ava.lang.NoClassDefFoundError: LibTest/sensorInput: test/MotionListener 
	at LibTest.LibTestMIDlet.<init>(+122)
	at java.lang.Class.runCustomCode(+0)
	at com.sun.midp.midlet.MIDletState.createMIDlet(+34)
	at com.sun.midp.midlet.Scheduler.schedule(+52)
	at com.sun.midp.main.Main.runLocalClass(+28)
	at com.sun.midp.main.Main.main(+80)
```

LibTest/sensorinput ist das Package und test/MotionListener ist dann die "neue" Klasse aus der eingefügten Jar...

Wir wissen echt nicht wo der Fehler ist und hoffen auf Hilfe 

MfG
Frank


----------



## hansmueller (31. Mrz 2010)

Hallo,

Java ME ist nicht so mein Gebiet, 
aber kann es sein, daß Eclipse vielleicht nur die jar-Datei in eure Programm-jar-Datei gepackt hat?
Wenn man eine fremde jar-Datei als zusätzliche Bibliothek einfügen will, darf man diese nicht einfach in die jar-Datei (von dem Programm, welches diese Bibliothek verwenden soll) packen.

MfG
hansmueller


----------



## Frank the B. (31. Mrz 2010)

naja also eigentlich haben wir die jar-bibliothek schon richtig erstellt denken wir. also so wie man auch "normale" jar-bibliotheken erstellt (in einem java sdk projekt).
also auf den source ordner rechtsklick --> export --> jar file --> und dann so weiter 
das jar file (das wir dann ja erstellt haben) haben wir dann über das MEProjekt rechtsklick --> properties --> java build path --> Add Jars, hinzugefügt. 
also eigentlich alles wie immer in java projekten...


----------



## hansmueller (31. Mrz 2010)

Mmmmhhh,
ich benutze diese Funktion von Eclipse nicht, ich benutze immer das Plugin Fatjar, deshalb kann ich nicht sagen, was Eclipse da genau macht.

Aber, da die benötigte Klasse lt. Fehlermeldung nicht gefunden wird, fallen mir 2 mögliche Fehler ein.

Die benötigte Klasse ist nicht vorhanden. Dies kann passieren wenn man mit verschiedenen Versionen eines Packetes arbeitet.
Der Pfad stimmt nicht.

Schau doch mal in deine erstellte jar-Datei, ob die Klasse auch wirklich vorhanden ist, bzw. ob die Ordnerstruktur auch mit den von dir verwendeten Pfaden übereinstimmt.

MfG
hansmueller


----------



## Frank the B. (31. Mrz 2010)

tja also "leider" sind alle Klassen vorhanden (in der extrahierten Jar) und der Pfad (denk du meinst den Pfad zur Jar im BuildPath) stimmt auch 

*edit: probiers nachher aber gleich mal mit Farjar. hab aber wenig Hoffnung, da sonst es mit Eclipse ja auch immer ohne Probleme klappte


----------



## hansmueller (31. Mrz 2010)

Nein, ich meinte nicht den BuildPath, sondern den Pfad, mit dem du die Klassen importierst. (Im Quelltext import ...).

Poste doch mal den Inhalt deiner Programm-jar-Datei.

MfG
hansmueller


----------

