Jar erstellen mit inneren Klassenn -> Problem

Angiii

Erfahrenes Mitglied
Hallo,

ich habe ein Java-Applet, dass ich als Application aufrufe. Nun will ich das ganze als ausführbare JAR-Datei exportieren, um das Applet unabhängig vom einen Browser ausführen zü können.

Jedoch bricht Eclipse während des Jar-Exports mit folgender Fehlermeldung ab:
Code:
Resource /XPort Applet does not exist.
Resource /XPort Applet does not exist.
Resource is out of sync wih the file system: /XPort Applet/manifest.mf .
Resource /XPort Applet does not exist.
(Mein Projektordner hat den Namen "XPort Applet".)

Es wird trotzdem ein JAR-File generiert. Natürlich lässt sich diese jedoch nicht starten. Wenn ich die JAR mit Winrar öffene, fällt mir auf, dass alle Klassen übernommen wurden, nur nicht die inneren Klassen. Ich habe viele innere klassen, da ich auf diese Weise meine ganzen Listeners programmiert habe, z.B. mit:
Code:
panelTab1.getPreset().addActionListener(new ActionListener() {
     public void actionPerformed(ActionEvent e) {
 		sendCommand(0x34, (byte) 1, (byte) 5, (byte) 5);
     }
});
Eventuell liegt der Fehler ja da. Muss ich die inneren Klassen irgendwie gesondert deklarieren (manifest Datei?). Im von Eclipse generierte manifest steht nur "Manifest-Version: 1.0".

Hat mein Problem mit den inneren Klassen zu tun, oder liegt es doch an was anderem? Danke im Voraus für alle Antworten!
 
Danke für Deine Antwort. Schonmal kein schlechter Tipp! Ich hab jetzt mal ein ganz einfaches Testprojekt aufgebaut. Es besteht aus einem einfachen Applet und einer zweiten Klassen die dieses Applet über main(String[] args) öffnet. Das Ganze habe ich unter einem einfachen Projektnamen ohne Leerzeichen, etc. gespeichert. Fazit: Die Fehlermeldungen sind erstmal weg und der Projektordner wird gefunden. Die Jar-Datei wurde ohne murren erzeugt.

Hab das ganze dann um ein paar innere Klassen erweitert. Ließ sich immer noch exportieren. Fürs erste nicht schlecht. Leider lässt sich die erzeugte JARi immer noch nicht ausführen. Zumindest kann ich nun ausschließen, dass der Fehler an den inneren Klassen hängt. Denn ob mit oder ohne - es passiert in beiden Fällen nichts.

Liegts wohl doch an der manifest Datei? Oder gibts noch andere Fehlerquellen?
 
Per Zufall hab ich jetzt das jar zum laufen gekriegt. Eclipse brachte dauernd 2 Warnungen beim compilieren. Eigentlich relativ unspektakuläre Sachen. Einmal was wegen der "serialVersionUID-Nummer" und weil ich einmal eine "depracted"-Function genutzt hatte.
Die Warnungne hatten mich nicht gestört, da meine Applets deswegen trotzdem immer schön funktioniert haben. Kaum bessere ich die Fehler aus, lässt sich das Jar jedoch starten! Was soll das denn? Haben die 2 dummen Warnungen wirklich soviel Einfluss? Davon hab ich ja noch nie was gelesen.

Mal sehen obs bei meinem richtigen Programm am selben Problem hängt.
 
Juhu, habs hinbekommen! Es lag an folgenden Fehlern:

1. Leerräume in Verzeichnisnamen. Dies verursachte, dass der Ordner nicht gefunden wurde. Danke matdacat!

2. Warnings im Quellcode. Der Quellcode muss tatsächlich 100% fehlerfrei sein. Selbst das harmloseste Warning schafft es, dass das jar nicht mehr richtig exportiert wird. Schon faszinierend...
 

Neue Beiträge

Zurück