Fehlermeldung



  • Hallo
    Ich bin blutiger Anfänger im programmieren mit Java.
    Habe mir das Buch Java in 21 Tagen gkauft und hänge nun schon am ersten Programm.
    Das Compilieren hat ja noch geklappt.
    Aber beim Ausführen bekomme ich ständig folgende Fehlermeldung:

    Exeption in thread "main" java.lang.NoClassDefFoundError: VolcanoRobot

    Kann mir jemand helfen?
    Im Buch finde ich nichts darüber.
    Danke.

    Gruss
    josiku





  • Hallo
    habe den richtigen Befehl ohne den Zusatz Java eingegeben, bekomme trotzdem die Fehlermeldung.

    Gruß
    josiku



  • überprüfe die schreibweise deiner klasse: genau gleich?
    groß und kleinschreibung beachtet?

    ist die klasse public, sprich ist sie überhaupt ausführbar?

    existiert eine main funktion in dieser klasse?

    so long



  • also hier mal der Code.
    Wie gesagt bin blutiger Anfänger.
    Compilieren mit javac funktioniert. Nur beim Ausführen mit java kommt die Fehlermeldung.

    class VolcanoRobot {
    String status;
    int speed;
    float temperature;

    void checkTemperature() {
    if (temperature > 660) {
    status = "returning home";
    speed = 5;
    }
    }

    void showAttributes() {
    System.out.println("Status: " + status);
    System.out.println("Speed: " + speed);
    System.out.println("Temperature: " + temperature);
    }

    public static void main(String[] arguments) {
    VolcanoRobot dante = new VolcanoRobot();
    dante.status = "exploring";
    dante.speed = 2;
    dante.temperature = 510;

    dante.showAttributes();
    System.out.println("Increasing speed to 3.");
    dante.speed = 3;
    dante.showAttributes();
    System.out.println("Changing temperature to 670.");
    dante.temperature = 670;
    dante.showAttributes();
    System.out.println("Checking the temperature.");
    dante.checkTemperature();
    dante.showAttributes();
    }
    }

    Vielen Dank



  • Eigentlich besagt doch die Fehlermeldung, dass die angegebene Klasse nicht gefunden wurde. Jetzt gibts zwei Möglichkeiten. Entweder es gibt die .class-Datei im CLASSPATH wirklich nicht oder aber der CLASSPATH verweist nicht auf das Verzeichnis, in dem die Klasse vorhanden wäre.

    Ich würde es spasseshalber mal wie folgt versuchen: Gehe in das Verzeichnis in dem die Klassendatei (.class) liegt.

    (1) Rufe von dort java.exe auf? Funktionierts? Wenn ja mache weiter mit (2)
    wenn nicht rufe java.exe so auf, dass du auf das Verzeichnis in dem
    java.exe liegt zugreifst. Also beispielsweise: C:\Programme\Java\jdk1.5.0\bin\java.exe
    (2) Wenn (1) funktioniert hat rufe auf:
    <Pfad zu java.exe>\java -classpath . VolcanoRobot

    Das sollte dann funktionieren.



  • Ich schätze mal, dass du den CLASSPATH nicht gesetzt hast. Schau mal hinten in deinem Buch im Anhang A "Die Konfiguration des Software Development Kit" ab Seite 791 nach.



  • Classpath heißt das magische Wort.
    Habe diesen in den Umgebungsvariablen auf das Verzeichnis gesetzt in dem die Class-Datei sich befindet. Es funzt.
    Danke für Eure Hilfe.

    Gruss
    josiku


Anmelden zum Antworten