Hallo, wieder ich...
Ich möchte mein Projekt nun abschliessen und ein jar daraus erstellen.
Ich habe die folgende Struktur:
Meine generateJar.bat: (Zusammengeschnippsel aus dem Forum hier):
Die daraus entstandne Manifest: (Wenn ich sie NICHT lösche! (Was bei meinem Script im Normalfall so ist)
Und nun, natürlich mein Problem:
Exception in thread "main" java.lang.NoClassDefFoundError: SRETT
Woohhaaa sexxxeehhh nicht? :-((
Nun, ich öffne das erstellte SRETT.jar um zu schauen, was alles überhaupt drin ist.
Nun ja, eigendlich ist alles vorhanden? (Ausser der Zeile Created-By: 1.5.0_02 (Sun Microsystems Inc.)) Was meiner Meinung nach aber nicht ein Problem darstellen soll...
Findet jemand das Problem und kann mir auf die Sprünge helfen?
Gruss vom LoL
PS:
Folgendes Script lässt meine Applikation starten!!
Editiert von L-ectron-X am 13.03.2006 um 15:30
Code-Tags repariert.
Ich möchte mein Projekt nun abschliessen und ein jar daraus erstellen.
Ich habe die folgende Struktur:
Code:
Installationsort (zB. C:\java\develop\)
-> SRETT.class (main)
-> SRETT Package
-> Alle SRETT*.Class
-> Images Ordner
-> 2-3 Bilder
-> srePackage Package
-> Alle srePackage*.Class
Meine generateJar.bat: (Zusammengeschnippsel aus dem Forum hier):
Code:
@echo off
echo JarBatch - erzeugen von jar-Dateien
echo.
rem * Hier den Pfad zum SDK setzen!
set PATH=C:\Sun\AppServer\jdk\bin;+PATH
rem * Manifestdatei vorbereiten und erzeugen.
echo Manifest-Version: 1.0>manifest.mf
rem * Bitte ClassPath hier angeben! (optional)
echo Class-Path: .>>manifest.mf
rem * Bitte Main-Class hier angeben!
echo Main-Class: SRETT>>manifest.mf
rem * Leerzeile mitgeben!
echo.>>manifest.mf
if exist *.class goto create
rem * Kompilieren, falls noch nicht geschehen.
:compile
if not exist *.java goto errorjava
javac -classpath srePackage/*.java
javac -classpath SRETT/*.java
javac -classpath *.java
rem * Jar-Datei erzeugen.
:create
if not exist *.class goto errorjar
rem * Bitte Name der zu erstellenden jar-Datei hier angeben!
rem * Beispiel: jar cfvm ArchivName.jar manifest.mf *.class images sounds
rem * fügt ein Manifest, alle class-Dateien und die Verzeichnisse images und sounds in ArchivName.jar ein.
jar cfvm SRETT.jar manifest.mf srePackage/*.class SRETT/*.class *.class SRETT/Images
echo Komplettes Projekt incl. Quellcode-Dateien dem jar-Archiv hinzugefügt.
goto end
:errorjava
echo java-Dateien nicht gefunden!
echo class-Dateien konnten nicht erstellt werden.
:errorjar
echo class-Dateien konnten nicht gefunden werden!
echo jar-Archiv konnte nicht erstellt werden.
:end
rem Manifest von Festplatte löschen
del manifest.mf
rem Konsole für Ausgaben geöffnet lassen
echo.
pause
Die daraus entstandne Manifest: (Wenn ich sie NICHT lösche! (Was bei meinem Script im Normalfall so ist)
Code:
Manifest-Version: 1.0
Class-Path: .
Main-Class: SRETT
Und nun, natürlich mein Problem:
Exception in thread "main" java.lang.NoClassDefFoundError: SRETT
Woohhaaa sexxxeehhh nicht? :-((
Nun, ich öffne das erstellte SRETT.jar um zu schauen, was alles überhaupt drin ist.
Code:
-> META-INF Folder
-> MANIFEST.FM
->Manifest-Version: 1.0
Manifest-Version: 1.0 //Zeile 1
Class-Path: .
Created-By: 1.5.0_02 (Sun Microsystems Inc.)
Main-Class: SRETT
//Leerzeile am Schluss
-> SRETT.class (main)
-> SRETT Package
-> Alle SRETT*.Class
-> Images Ordner
-> 2-3 Bilder
-> srePackage Package
-> Alle srePackage*.Class
Nun ja, eigendlich ist alles vorhanden? (Ausser der Zeile Created-By: 1.5.0_02 (Sun Microsystems Inc.)) Was meiner Meinung nach aber nicht ein Problem darstellen soll...
Findet jemand das Problem und kann mir auf die Sprünge helfen?
Gruss vom LoL
PS:
Folgendes Script lässt meine Applikation starten!!
Code:
@ECHO OFF
ECHO set the PATH....
set PATH=C:\Sun\AppServer\jdk\bin;+PATH
ECHO Compiling Sources...
javac -classpath ./ *.java
ECHO Running SRETT...
java SRETT
pause
Editiert von L-ectron-X am 13.03.2006 um 15:30
Code-Tags repariert.