Problem beim ersten compilieren überhaubt

stevoo

Aktives Mitglied
Erstmal: Bin absoluter Anfänger. Habe mit programmieren noch nie etwas zu tun gehabt.
Ich möchte die Text Datei Test01 compilieren
1. Hab Java auf die Datei Java 2 installiert und javac befinden sich dann in D:\Java 2\bin\javac

Aber wenn ich versuche es zu compilieren kommt so etwas dabei raus
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

D:\Java 2\bin>javac Test01.java
Fehler: Hauptklasse com.sun.tools.javac.Main konnte nicht gefunden oder geladen
werden

Was soll ich tun?
Könnte es vielleicht daran liegen, dass ich das falsche Programm hab? Hab dieses installiert Java SDK (32 Bit) - Download - CHIP Online

mgf stevoo
 
Jo, daran wird's wohl liegen: Der Name der Klasse muss mit dem Dateinamen übereinstimmen.

class Main -> Save as Main.java
class Test01 -> Save as Test01.java
 
Ja klar 🙂 Ich versuche schon seit ein paar Minuten genau nachzudenken was du meinst. Aber wie gesagt, ich bin ein absoluter Anfänger 🙂 Deswegen brauche ich wahrscheinlich ein wenig länger. Muss ich die Main class einfach umbenennen, verstehe ich das richtig?
 
Tut mir leid, aber irgednwie blicke ich trotzdem nicht durch. Ich hab eine Datei Namens classes.jsa in Main.java umbennant und dann habe ich Test01.java in Main.java umbennant und den Befehl gegeben D:\Java 2\bin>javac Main.java
Und dann kommt die gleiche Fehlermeldung wie oben
 
Zuletzt bearbeitet:
Hae? Was soll classes.jsk sein?

Schau mal: Du öffnest einen Texteditor (Notepad, oder was auch immer) und schreibst dort deine Klasse:

Java:
public class XY{ ... }

Diese Datei musst du nun abspeichern unter dem Namen XY.java

Dann kompilierst du sie mit

Code:
javac XY.java

Wobei diese Datei in dem Ordner liegen muss, in dem du dich gerade in der Shell befindest. Also in deinem Falle im /bin-Ornder deiner JDK-Installation.
 
muesste das richtige sein, Java SDK ist Abgekuerzt JDK soweit ich weiss

edit: kann aber natuerlich nie schaden, sich das ganze von der offiziellen Seite zu holen...
 
Zuletzt bearbeitet:
public class Test01 {
public static void main(String[] args) {
System.out.println("Erstes Programm");
}
}

Das habe ich unter Test01 gespeichert und Test01 befindet sich in der Datei D:\Java 2\bin

Vielleicht ist es im falschen bin ordner? Ich habe sonst noch 2 Bin ordner und zwar: D:\Java 2\db\bin und D:\Java 2\jre\bin
 
Müsste eigentlich korrekt sein. Sicher, dass du die Datei unter Test01.java abgespeichert hast? Und nicht vllt Test01.txt oder sowas?

PS: D:/Java 2/bin ist ein Ordner, keine Datei.

PPS: Bitte benutze die Java Code Tags für Code (Kaffeetassen-Symbol im Editor)
 
Noch was: Hast du deaktiviert, dass bekannte Dateinamenserweiterungen ausgeblendet werden? Sonst kann es naemlich passieren, dass deine Datei Test01.java.txt heisst, obwohl du nur Test01.java siehst
 
D:\Java 2\bin>javac Test01.java
Fehler: Hauptklasse com.sun.tools.javac.Main konnte nicht gefunden oder geladen
werden
Wie A.Radauer schon schrieb - das hat zunächst mal nichts mit der zu übersetzenden Datei zu tun; hier findet das javac-Programm die von ihm selbst benötigten Klassen nicht. Also ist das JDK nicht korrekt installiert.
 
Hast du einen Link und eine Anleitung wie ich das JDK korrekt installieren kann und wie ich das alte löschen kann. Aber so nebenbei, wenn ich unte rsoftware nachschaue ist das Java(TM) SE Development Kit 7 Update 1 drauf
 
Ich versuche einfach alles neu auf meinem PC zu installieren. Das Notebook lasse ich mal in Ruhe und lösche nichts.

PS: Ich habe Windows XP. Welches JDK soll ich mir downloaden: Windows x86 oder Windows x64?
 
Nimm den Link den ich vorher gepostet hab, zur Sicherheit. Und am besten du belässt es beim Standard-Pfad (C:/Programme usw).
 
Du kennst nicht den Unterschied zwischen einer Datei und einem Ordner, und weißt nicht was für ein Betriebssystem du hast. Aber du willst programmieren... Das wird ja lustig...

No offense, aber evtl kaufst du dir erstmal paar Computer-Zeitschriften.

Ob x86 oder x64 kannst nur du wissen. Geh auf den Windows-Knopf unten links, und gib in das Suchfeld ein: dxdiag

Dann Enter drücken. Im erscheinenden Dialog steht dann irgendwas von Betriebssystem/Operating System. Wenn dort etwas von 64-Bit steht dann brauchst du x64. Wenn dort was von 32 Bit steht, oder einfach gar nix, dann brauchst du x86.

edit: zu langsam.. also da haste deine antwort: x86
 
Hmm also da kein 64bit dabeisteht (wie zum Beispiel bei mir) würde ich sagen du hast ein 32-Bit System und brauchst x86. Kann noch jemand anderes bestätigen dass 32 Bit nie dabeisteht oder könnte das auch an XP liegen? (Ich benutze 7 und Ubuntu, daher weiß ich das nicht...)

edit: zu langsam... was solls^^
 
Alternativ kannst du prüfen, ob du unter C:/ einen Ordner "Program Files (x86)" oder "Programme (x86)" stehen hast. Wenn nein, dann hast du x86.
 
Wie ändere ich bei der Eingabeaufforderung den Pfad. Dass es zum Beispiel nicht C:\Dukumente und Einstellungen> anzeigt sondern z.b: wie ich es will C:\Programme\Java\jdk1.7.0_01\bin
 
Besser ist es wenn du java und javac in den System Path einsetzt. Dann kannst du java und javac aus jedem Ordner heraus benutzen.

Rechtsklick auf Computer -> Eigenschaften -> Erweiterte Systemeinstellungen -> Umgebungsvariablen.

Dort den Eintrag "Path" suchen und editieren. Ans Ende des Pfades den Pfad zu deinem JDK-bin Ordner einfügen, mit einem Strichpunkt vom vorigen Eintrag getrennt. z.B:

Code:
<alles was bisher im Path steht>;C:\Programme\Java\jdk1.7.0\bin

Ob's funktioniert hat kannst du testen in dem du in der Eingabeaufforderung in einen beliebigen Ordner wechelst (außer dem bin-Ornder) und dort einfach nur "javac" eintippst. Wenn eine Liste mit Befehlen erscheint hast du alles richtig gemacht. Wenn da steht "unbekannter Befehl" o.ä. dann hast du etwas falsch gemacht.
 
Geschafft!! Test01.class habe ich schon.Danke Leute. Mal schauen ob der Java Interpreter funkt.

wegen Path: Hab einfach Java editor ins bin installiert und die Eingabeaufforedrung von dort gestartet
 
Ok das steht bei mir:
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Programme\Java\jdk1.7.0_01\bin>javac Test01.java

C:\Programme\Java\jdk1.7.0_01\bin>java Test01
Erstes Programm

C:\Programme\Java\jdk1.7.0_01\bin>

Wo kann ich das programm jetzt anschauen, was habe ich jetzt davon?
 
Wo kann ich das programm jetzt anschauen, was habe ich jetzt davon?
Tja, was hast du davon... Gute Frage 😉 Das Programm ist nun mal sehr primitiv: Es zeigt den Text "Erstes Programm" an und das war's. Da gibt's auch nix zum Anschauen. Was hast du denn erwartet? Das Programm zeigt nur das was du programmierst...
 
Was bewirkt dieses Programm welches ich jetzt geschrieben hab? Sorry für die dummen Fragen, wie gesagt ich bin ein Neuling in diesem Gebiet. Den Text für den Editor habe ich auch nur aus einem Buch
 
Es bewirkt, dass der Text "Erstes Programm" auf der Eingabeaufforderung angezeigt wird. Und das ist ja auch passiert.
 
Trotzdem ist es geil es endlich geschafft zu haben!! Ich bleib natürlich drann! Schau ma das Buch weiter an!! Nochmals vielen vielen dank für eure Hilfe! Ohne euch wäre ich bei weitem nciht so schnell auf das Problem draufgekommen. Danke!!!
 
Noch ein kleiner Tipp für die nächsten Beispiele: Schau dir erst an, was ein Programm machen soll, und dann tippe es ab ;-)

edit: Naja, man muss halt drauf kommen wie man ein Problem löst, also sich Algorithmen ausdenken. besondere Begrifflichkeiten die algorithmen betreffen muss man dazu nicht unbedingt können.
 
Um selber programmiern zu können muss man sich gut mit Algorithmen auskennen. Sehe ich das richtig?
Nicht unbedingt. Ich z.B. würde mich selbst als Mathe-Niete bezeichnen. Ist natürlich die Frage, wie man Algorithmus definiert. Generell würde ich eher sagen, man muss eine gewisse Affinität zu logischem Denken haben.
 

Neue Themen


Zurück
Oben