Nachdem ich ein *.java-Datei mit javac kompiliert hab, will ich nun mein Programm starten. Nur kommt dann immer folgende Meldung:
Exception in thread „main“ java.lang.NoClassDefFoundError: HelloWorldApp
Das Programm sieht so aus:
/**
* The HelloWorldApp class implements an application that
* simply displays „Hello World!“ to the standard output.
*/
class HelloWorldApp {
public static void main(String[] args) {
System.out.println(„Hello World!“); //Display the string.
}
}
Vermutlich ist das Verzeichnis, in dem die vom Java-Compiler erzeugte Datei HelloWorldApp.class steht, nicht in der Umgebungsvariable CLASSPATH enthalten.
Vermutlich ist das Verzeichnis, in dem die vom Java-Compiler
erzeugte Datei HelloWorldApp.class steht, nicht in der
Umgebungsvariable CLASSPATH enthalten.
Du kannst das Programm aus jedem Verzeichnis
starten, wenn im der Umgebungsvariable
PATH sowas wie [JAVA_HOME]/bin steht.
Das Verzeichnis in dem Du Deine Programme
schreibst, brauchst Du nicht in die
CLASSPATH-Variable aufnehmen.
Ich habe so ein bisschen den Verdacht, dass wir aneinander vorbei reden.
Aber: Wenn der Punkt (aktuelles Verzeichnis) nicht im CLASSPATH ist, werden class-Dateien im aktuellen Verzeichnis nicht gefunden, egal was im PATH steht.
MfG, Jan-Peter
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Ich habe so ein bisschen den Verdacht, dass wir aneinander
vorbei reden.
Kann wohl sein
Vielleicht muss man hier und da ja explizit den
CLASSPATH setzen ( musste ich jetzt z.B. im
Zusammenhang mit Servlet-Programmierung ), ich habe
das zumindest fuer ganz ‚normale‘ Programme nie
gemacht und sie funktionierten.
Ich denke, Du hast wohl etwas oder viel mehr
Java-Erfahrung und darum beuge ich mich der
rohen Gewalt.
Aber vielleicht habe ich auch ein ganz klein
wenig Recht…