PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Java-Dateien richtig kompilieren?


Ganon
2004-07-09, 20:03:19
Hi.

Ich möchte jetzt mit Java anfangen. Ich lese dazu das Java-Handbuch von javabuch.de.

Ich mache das ganze unter OS X mit dem Befehl "javac". Unter OS X funktioniert auch alles. Code lässt sich kompilieren und ausführen.

Nun wollte ich die Programme auch mal unter Windows starten. Ich habe dazu die Java-Runtime von Sun installiert. Also kompiliere ich unter OS X die Dateien mit javac Test.java. Dabei entstehen ja ein paar Class-Dateien.

Diese Dateien habe ich dann nach Windows kopiert und wollte das Programm dann mit "java Test" starten. Dann kommt aber folgende Meldung:

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

Wie gesagt unter OS X funktioniert das alles prima. Auf beiden Rechnern ist Java2 1.4.2 drauf. Unter Windows ist aber nur die Runtime installiert.

Woran liegt das? Was mache ich falsch?

Danke. :)

bulla
2004-07-09, 20:14:43
Du musst den Classpath noch setzen:
Arbeitsplatz/eigenschaften/Erweitert/Umgebungsvariablen

dort im oberen Fenster:
neue Variable "CLASSPATH" mit dem Wert "E:\Programme\Java2\lib\tools.jar;"

bzw. mit dem Pfad deiner Wahl :)

HellHorse
2004-07-09, 20:32:21
Original geschrieben von Ganon
Exception in thread "main" java.lang.NoClassDefFoundError: Test
Hast du es in dem Verzeichnis ausgeführt, wo die Test.class liegt?

Trap
2004-07-09, 20:33:33
Probier mal "java -cp . Test" :)

Ganon
2004-07-09, 20:58:49
Hi.

Danke. Es funktioniert jetzt. :)

Ich habe es jetzt mit "java -cp . Test" gestartet und es läuft. :)

Die CLASSPATH-Variable traue ich mich nicht einzutragen, da wohl InterBase von Delphi das zu nutzen scheint. Zumindest steht es bei Systemvariablen.

Ist ja auch egal. Hauptsache es läuft zum Testen. :)

HellHorse
2004-07-09, 21:23:25
Original geschrieben von Ganon
Die CLASSPATH-Variable traue ich mich nicht einzutragen, da wohl InterBase von Delphi das zu nutzen scheint.
Würde ich auch nicht machen. Wenn du ernsthaft mit Java arbeiten willst schau dir auf jeden Fall ant (http://ant.apache.org/) (java Gegenstück zu make) an. Sieht auf den ersten Blick kryptisch aus, ist aber extrem prakitsch.
Du kannst auch make verwenden, wenn du das schon kannst.