ubuntuusers.de

[gelöst] Warum immer java.lang.NoClassDefFoundError:

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

Syl

Anmeldungsdatum:
15. Juni 2005

Beiträge: 18

Hallo zusammen.
Ich habe letztens unter "Ubuntu Linux 5.04: The Hoary Hedgehog Release" mit Hilfe der Texte im Wiki durch die Ubuntu-Backports Java 1.5 installiert. Der Compiler "javac" läuft und erzeugt fleißig ByteCode. Jedoch der Interpreter "java" gibt mir ständig folgendes aus:

Exception in thread "main" java.lang.NoClassDefFoundError: Test/class


und das selbst bei einem so einfachen Programm wie:

public class Test {
	public static void main(String[] args){
		System.out.println("Funktioniert das endlich?");
	}
}


Mit Eclipse funktionieren alle meine Programme, darum verstehe ich nicht warum ich sie nicht vom Terminal aus ausführen kann. Ich würde ja Eclipse benutzen, wenn mein Rechner nicht immer voll in die Knie gehen würde.
Bitte um Antwort, damit ich endlich zum programmieren komme.
Viele Grüße,
Syl

Bearbeitet von dusselmann:

Thread als gelöst markiert..

Jochen_Skulj Team-Icon

Lokalisierungsteam
Avatar von Jochen_Skulj

Anmeldungsdatum:
18. März 2005

Beiträge: 262

Meine Vermutung: du gibt die Extension .class beim Aufruf von java mit an. Wenn du dein Programm mit

javac Test.java

compilierst, erhälst du eine compilierte Klasse Test.class. Die startet man einfach mit

java Test

- also ohne Extension. Dann läuft das auch. Versucht man jedoch, das Ganze mit

java Test.class

zu starten, erhält man den von dir beschriebenen Fehler. Also: Extension weglassen.

Bei Programmen mit mehreren Klassen und entsprechenden Package-Strukturen wird es das Beste sein, Ant zu verwenden, falls du keine IDE wie Eclipse einsetzen kannst.

Jochen

Syl

(Themenstarter)

Anmeldungsdatum:
15. Juni 2005

Beiträge: 18

Wow, genau das war das Problem. Danke!!
Viele Grüße,
Syl

Antworten |