javac kann trotz PATH-Eintrag nicht gefunden werden (Hello World)

devastator23

Mitglied
Guten Morgen liebe Java Nutzer,

ich bin gerade dabei, Java anhand eines Tutorials zu erlernen - oder eben daran zu scheitern. Wie in wohl jedem Tutorial geht alles recht harmlos los, Hello World ist verlangt. Der Quelltext wird vorgegeben. Und dann geht es ans Ausführen.

Ich habe einen Screenshot angefügt, der hoffentlich alles Nötige dokumentiert, was ich nun beschreibe:

Hello.java befindet sich in c:\java.

JDK und JRE befinden sich in C:\Program Files\Java im jeweiligen Unterverzeichnis.

Ich verwende Windows 7 mit 32 Bit. Und in Deutscher Sprache, so dass C:\Program Files und C:\Programme irgendwie das Gleiche sind - oder auch nicht - und damit eine mögliche Fehlerquelle.

Ich habe unter Windows den PATH zum JDK gesetzt (aktuell mit C:\Programme\[...], aber auch C:\Program Files\[...] zeigte das gleiche Verhalten).

Jetzt öffne ich die Eingabeaufforderung.

PATH zeigt die PATH-Variable an, eben auch den Verweis auf den Bin-Ordner des JDK.

Ich wechsle in den Ordner C:\java, in dem sich Hello.java befindet.

javac Hello.java liefert eine Fehlermeldung.

Ich wechsle dann in den Bin-Ordner des JDK.

javac C:\java\Hello.java funktioniert.

In C:\java befindet sich nun zusätzlich Hello.class.

Aus C:\java kann ich nun java Hello korrekt ausführen.

Javac_Problem.jpg

Kurzum: java scheint mittels PATH-Variable zu funktionieren, javac aber nicht. Ich habe als Lösungsvorschläge fast ausschließlich Hinweise auf die PATH-Variable gefunden, aber so weit ich als Laie das überblicke funktionierten jeweils java UND javac gleichzeitig ober beide funktionierten gleichzeitig nicht.

Ich wäre sehr dankbar, wenn ein erfahrener Java-Nutzer da mal einen Blick drauf werfen könnte und mir erklären könnte, was ich falsch mache und wie ich es korrigieren kann.
 

devastator23

Mitglied
Nun, offenbar scheint mein Problem weder trivial zu sein, noch häufig aufzutreten. Eine Lösung habe ich auch noch nicht gefunden, aber falls jemand das gleiche Problem hat und vom ständigen Wechseln der Verzeichnisse in der Eingabeaufforderung genervt ist, kann ich das Arbeiten mit zwei Eingabeaufforderungen empfehlen:

Vereinfachung.jpg

Links lasse ich den Compiler arbeiten, rechts die Programme aus meinem dafür angelegten Ordner laufen. Mittels Pfeil-Nach-Oben-Taste können die beiden Arbeitsschritte ziemlich ausgeführt werden. Zum aktuellen Zeitpunkt arbeite ich offenschtlich noch nicht mit einem speziellen Editor und kann daher auch nicht beurteilen, ob dieses Vorgehen dabei notwendig oder nützlich ist.

Natürlich würde es mich freuen, wenn jemand noch eine Lösung für mein Problem findet.
 
Zuletzt bearbeitet:

VfL_Freak

Top Contributor
Moin,

wenn ich es richtig sehe, nutzt Du Java8, oder ?
Dort hat sich mal wieder die Lage der Dateien geändert!
Du müsstest unter "ProgramData" den Pfad "Oracle/Java" finden, dort liegen im Unterverzeichnis "javapath" Verknüpfungen auf die drei relevanten exe-Dateien.

Schreib' mal den Pfad "C:\ProgramData\Oracle\Java\javapath;" (oder entsprechenden Laufwerksbuchstaben) als erstes in die PATH-Variable, dann sollte es wieder klappen !

Gruß Klaus
 

devastator23

Mitglied
Hallo VfL_Freak,

danke schonmal für die schnelle Antwort.

Java8 ist eine gute Frage. java -version sagt es sei Version 1.8.0_31, wie auch der Ordnername des JDK besagt. Ist das Java8? Ich tippe mal ja. Korrigier mich bitte ggf.!

Der Pfad ist bereits am Anfang der Path-Variable gesetzt, wie im Bild aus dem ursprünglichen Eintrag vielleicht zu erkennen ist (ich weiß, es ist offenbar etwas unscharf). Allerdings war das schon der Fall, bevor ich überhaupt den letzten, rot unterstrichenen Eintrag hinzugefügt habe der Fall. Ich weiß also nicht ob das durch meine JDK-Installation geschehen ist oder durch ein voriges Java-Update (da fehlt mir noch jeder ernstzunehmende Überblick über Java und seine Komponenten). Dieser Path-Eintrag ist also nicht unmittelbar mein Werk und ich habe ihn daher unverändert gelassen und nur den Eintrag am Ende hinzugefügt.

Aber vielleicht kommen wir über einen anderen Ansatzpunkt weiter, wie ich gerade sehe: Das von dr genannte Verzeichnis enthält auf meiner Festplatte ganze drei Einträge:

java.exe,
javaw.exe und
javaws.exe.

Jeweils vom Typ SYMLINK. Kann es zufällig sein, dass hier der Verweis auf javac.exe fehlt?

Ich würde ja gerne schon Erfolg vermelden, habe aber auf die Schnelle gerade keine weitere SYMLINK-Datei erzeugen können (nur eine normale Verknüpfung oder wenn ich z.B. den java.exe-SYMLINK kopiere und einfüge eine tatsächliche .exe-Datei).

Weißt du (oder jemand anders) vielleicht, wie ich den entsprechenden javac.exe-SYMLINK in diesen Ordner mogeln kann oder kennt einen anderen Weg?

Danke aber schonmal, VfL_Freak!
 

VfL_Freak

Top Contributor
Moin,

oh, stimmt, Du suchst ja den Complier ... sorry!

Also: erstmal richtig, die 8 steht für Java8 !!

Dann: die Complier-exe liegt im BIN-Verzeichnis des installierten JDK.
Du benötigst also in den Systemvariablen die Variable CLASSPATH mit dem Eintrag "C:\Program Files (x86)\Java\jdk1.7.0_75\bin" (rsp. Dein entsprechender Pfad) !!

Gruß Klaus
 

devastator23

Mitglied
Gesagt, getan, gescheitert.

Ich habe CLASSPATH erstellt, verschiedene Schreibweisen des Pfades ausprobiert (Program Files, Programme, mit und ohne (x86)) und jedes Mal kommt die gleiche Fehlermeldung.

Daher danke ich dir erneut, aber kann das Problem leider nicht als gelöst bezeichnen.

Ich fürchte, da ich mit PATH und Co. noch nie gearbeitet habe, dass ich irgendwo einen Anfängerfehler einbaue oder irgendwas (scheinbar?) Triviales übersehe.
 

VfL_Freak

Top Contributor
Moin,

es muss schon die "englische" Schreibweise sein, also "Program Files (x86)".
So heißt das Verzeichnis intern IMMER, alles andere sie nur Anzeigen/Umlenkungen für die deutsche Version!!

Du könntest auch noch schauen, ob JAVA_HOME auf "C:\Program Files (x86)\Java\jdk1.7.0_75" zeigt !

Und ggf. mal die HD komplett nach "javac.exe durchsuchen !!

Gruß Klaus
 

devastator23

Mitglied
Langsam zweifle ich an mir.

Ich habe in den Untiefen des Internets drei Varianten gefunden, die angeblich alle das Problem beheben: C:\Programme, C:\Program Files und C:\Program Files (x86). Zwar nicht ausdrücklich für mein Win7 32 Bit (Letzteres natürlich für 32 Bit), aber alle drei haben bei mir keinen Erfolg in path gebracht.

JAVA_Home habe ich mehrfach gefunden, habe es als Benutzer- und Systemvariable ausprobiert. Das scheint aber nur eine Kurzschreibweise zu sein. Vor deiner letzten Antwort hatte ich es wieder gelöscht (ich hatte es ursprünglich auch selbst erstellt), nun wieder erzeugt.

An irgendeiner Stelle schrieb wer, dass bei ihm unter XP in der path-Variable der Verweis auf das Verzeichnis, in dem javac.exe sich befindet, am Anfang stehen musste. Ich habe es gerade an den Anfang kopiert, kein Erfolg.

javac.exe befindet sich einmalig auf der Festplatte, nämlich in C:\Program Files\Java\jdk1.8.0_31\bin. So zumindest die Schreibweise (also ohne (x86)), mit der ich javac über die Eingabeaufforderung ausführen kann. javac.exe funktioniert ja auch, ich kann ja kompilieren und erfolgreich ausführen. Aber ich kann javac.exe eben ausschließlich aus dem o.g. Verzeichnis aufrufen.

Kann es nicht sein, dass ein SYMLINK zu javac.exe in das javapath-Verzeichnis gehört?

Sorry, wenn wir uns irgendwie wegen eienr Kleinigkeit hier im Kreis drehen, aber einer hat hier ein Brett vorm Kopf: Mein Rechner oder ich.






Nachtrag:

Ich habe den JDK-Pfad aus path wieder entfernt. Dann wollte es naturgemäß nicht funktionieren. Dann habe ich ihn wieder reingeschrieben, mit Program Files, ohne x86. Jetzt läuft javac auch aus c:\java! Dafür aber kann ich java von dort nicht mehr ausführen, mit Programmen, die vorher funktioniert haben?????

Fehler: Hauptklasse [NAME] konnte nicht gefunden oder geladen werden.

Ich mache mich mal auf die Suche nach dieser Fehlermeldung.


Nachtrag 2:

I werd' narrisch!

Jetzt habe ich zusätzlich den CLASSPATH wieder rausgeschmissen und es scheint zu funktionieren!

Aber frag mich bitte niemand, warum!

Fürs Protokoll: CLASSPATH: Kein Eintrag.

path an erster Stelle: C:\ProgramData\Oracle\Java\javapath;

path an letzter Stelle: c:\Program Files\Java\jdk1.8.0_31\bin

KEIN (x86), Am Ende (nach \bin) KEIN Backslash und KEIN Semikolon. Ob der Eintrag case-sensitive ist, kann ich nicht sagen, weil ich nur den Laufwerksbuchstaben klein geschrieben habe.

Ich bin mir sicher, diese Konstellation am Anfang erfolglos ausprobiert zu haben und weiß nicht, ob es jetzt dauerhaft funktionieren wird. Wenn nicht, dann melde ich mich selbstverständlich.

An dieser Stelle nochmal ein dickes DANKE an VfL_Freak (es wird wieder Zeit für Zweitligafußball an der Bremer Brücke) und an alle etwaigen Helfer, die Zeit investiert haben, sich aber nicht zu Wort gemeldet haben!
 
Zuletzt bearbeitet:

VfL_Freak

Top Contributor
Moin,
wir sollten erstmal klären, was Du überhaupt für ein System hast !!

javac.exe befindet sich einmalig auf der Festplatte, nämlich in C:\Program Files\Java\jdk1.8.0_31\bin. So zumindest die Schreibweise (also ohne (x86)), mit der ich javac über die Eingabeaufforderung ausführen kann.
Aha !!
Das bedeutet, dass Du ein 64-bit-Java drauf hast !!!

javac.exe funktioniert ja auch, ich kann ja kompilieren und erfolgreich ausführen. Aber ich kann javac.exe eben ausschließlich aus dem o.g. Verzeichnis aufrufen.
Was auch ok ist !!

Kann es nicht sein, dass ein SYMLINK zu javac.exe in das javapath-Verzeichnis gehört?
Nein, die drei dortigen Dateien sind für WebStart notwendig, nicht zu compilieren !!
Sie liegen da auch, wenn nur ein JRE installiert ist ...

Gruß
Klaus
 

devastator23

Mitglied
Blödes Timing!

Es läuft, siehe Nachtrag 2.

Ein 64-Bit-Java sollte NICHT der Fall sein, es sei denn, die x86-Version des Downloads auf der offiziellen Homepage hat eine 64-Bit-Java-Datei namens "jdk-8u31-windows-i586" im Angebot. Generell reicht es (wie du oben sehen kannst) C:\Programme bzw. C:\Program Files anzuwählen, einen x86-Ordner habe ich laut Anzeige (!) nicht (aber DEFINITIV 32-Bit Win7 laut Systemsteuerung und die dumme RAM-Einschränkung auf unter 4 GB, obwohl ich 4GB eingebaut habe). Frag bitte nicht, warum Program Files (x86) nicht angezeigt wird, ich bin nur dummer Nutzer.

Aber zumindest vorerst scheint das ohnehin egal zu sein. Dir danke nich nochmal ausdrücklich für deine Hilfe und hoffe, kein großes Chaos hier veranstaltet zu haben.
 

VfL_Freak

Top Contributor
Moin,
(es wird wieder Zeit für Zweitligafußball an der Bremer Brücke)
make my day :lol:


Noch kurz zur Erläuterung:

(a) wenn Du "... DEFINITIV 32-Bit Win7 ..." Dein eigen nennst, dann wirst natürlich auch keine Ordner mit dem Zusatz "(x86)" sehen, weil dann ja alles x86 ist! Nur beim bei 64-bit-Systemen gibt es dann BEIDE Ordner "Programme" und "Programme (x86)". Im ersten liegen dann die 64-bit-Anwendungen und im anderen die 32-bit-Programme!

(b) kurz zur "... dummen RAM-Einschränkung auf unter 4 GB, obwohl ich 4GB eingebaut habe ...".
Die ist nicht dumm, sondern technisch bedingt, weil eben keine größeren Speicheradressen addressiert werden können (4-GB-Grenze)
Wenn Du mehr brauchst/möchstest, dann musst du halt auf ein 64-bit-OS umsteigen !

Gruß Klaus
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
H javac Befehl trotz Variablen einbindung ned gefunden Java Basics - Anfänger-Themen 23
N Javac -version der Befehl ist entweder falsch geschrieben oder...... Java Basics - Anfänger-Themen 8
T In C:\java\bin wird kein javac angezeigt. Java Basics - Anfänger-Themen 1
T Bei mir wird keine javac angezeigt sondern nur javacpl Java Basics - Anfänger-Themen 2
O javac Java Basics - Anfänger-Themen 16
D JAVA JDK korrekt installieren javac wird nicht gefunden Java Basics - Anfänger-Themen 2
Zrebna Compiler-Fehler Java-Compiler wird nach 'javac' keyword-Eingabe nicht gestartet (Erste Übung) Java Basics - Anfänger-Themen 18
E Compiler-Fehler Javac Windows vs Ubuntu /Script vs Konsole Java Basics - Anfänger-Themen 4
T Prog1Tools javac Java Basics - Anfänger-Themen 2
C Keine javac.exe in bin-Datei Java Basics - Anfänger-Themen 3
J Input/Output javac HelloWorld.java - Keine Textausgabe in der Konsole Java Basics - Anfänger-Themen 4
Ruschi JDK installieren javac wird nicht gefunden Java Basics - Anfänger-Themen 48
S Compiler-Fehler javac hat Probleme mit Paketen unter OSX Java Basics - Anfänger-Themen 2
P JDK installieren javac behauptet Javax.swing existiert nicht Java Basics - Anfänger-Themen 8
W JDK installieren Frage zu javac Java Basics - Anfänger-Themen 9
O Javac findet die .java datei nicht Java Basics - Anfänger-Themen 2
H javac.exe konnte nicht gefunden werden Java Basics - Anfänger-Themen 2
B javac Java Basics - Anfänger-Themen 9
O CMD Befehl javac Java Basics - Anfänger-Themen 3
V java Pfad javac Java Basics - Anfänger-Themen 8
R Compiler-Fehler javac -> "hauptklasse com.sun.tools.javac.main konnte nicht gefunden oder geladen werden" Java Basics - Anfänger-Themen 33
B JDK installieren Javac nicht gefunden oder... Java Basics - Anfänger-Themen 2
X javac file not found Java Basics - Anfänger-Themen 4
I Fehler: Hauptklasse com.sun.tools.javac.main konnte nicht gefunden werden Java Basics - Anfänger-Themen 3
J "javac" in der Eingabeaufforderung Java Basics - Anfänger-Themen 8
M Umgebungsvariable javac wird nicht gefunden Java Basics - Anfänger-Themen 4
K javac in der konsole Java Basics - Anfänger-Themen 4
X Compiler-Fehler javac - 08 eine zu große int? Java Basics - Anfänger-Themen 11
F javac Schreibrecht Java Basics - Anfänger-Themen 58
P Umgebungsvariable javac wird nicht gefunden Java Basics - Anfänger-Themen 18
D javac zum Kompilieren von mehreren Dateien Java Basics - Anfänger-Themen 6
A Mit javac zweite Datei compilieren ohne Erste erneut zu compilieren? Java Basics - Anfänger-Themen 7
S javac Befehl Java Basics - Anfänger-Themen 7
F Mit javac Package compilieren Java Basics - Anfänger-Themen 3
P javac Verzeichnis Java Basics - Anfänger-Themen 2
J Mac OS X - javac - Compiler Probleme Java Basics - Anfänger-Themen 2
R Problem mit javac Java Basics - Anfänger-Themen 4
S javac - Rückgabewerte an die Shell Java Basics - Anfänger-Themen 10
A javac geht, java nicht ? Java Basics - Anfänger-Themen 20
B 2 Anfängerfragen zu JDK und javac Java Basics - Anfänger-Themen 4
B Java und Javac funktionieren nicht - bitte hilfe Java Basics - Anfänger-Themen 5
C javac, exec, -sourcepath, Umgebungsvariablen Java Basics - Anfänger-Themen 9
M Keine Ausgabe nach erfolgreichem Kompilieren (javac, ubuntu) Java Basics - Anfänger-Themen 10
C Testprogramm kann nicht compiliert werden - javac findet file nicht Java Basics - Anfänger-Themen 12
L Javac geht nicht Java Basics - Anfänger-Themen 17
rambozola Javac $1 Java Basics - Anfänger-Themen 3
A Javac - Der Horror! Java Basics - Anfänger-Themen 12
S Mein Computer kennt "javac" und "java" nicht mehr! Java Basics - Anfänger-Themen 6
K javac wird nich gefunden Java Basics - Anfänger-Themen 1
B Befehl "javac" wird nicht erkannt Java Basics - Anfänger-Themen 14
T Javac und Packages Java Basics - Anfänger-Themen 4
S Befehl "javac" funktioniert und Windows 7 nicht? Java Basics - Anfänger-Themen 3
1 Fallunterscheidung; ea.Kon in JCreator einfügen; CMD akzpetiert keine java, javac Java Basics - Anfänger-Themen 5
H windows 7 javac/path nicht gefunden Java Basics - Anfänger-Themen 3
M javac findet Oberklassedatei nicht Java Basics - Anfänger-Themen 7
Sebi javac probleme Java Basics - Anfänger-Themen 6
S javac Kompilierproblem Java Basics - Anfänger-Themen 17
P JAVA Compiler (Javac) Java Basics - Anfänger-Themen 4
S javac im CMD funktioniert nicht ? Java Basics - Anfänger-Themen 2
J jar, javac, ant funktioiniert nicht Java Basics - Anfänger-Themen 4
Bloodredangel [gelöst] Kompilieren von .java-Dateien per javac Java Basics - Anfänger-Themen 5
H javac - Eingabeaufforderung Problem Java Basics - Anfänger-Themen 12
J javac Probleme mal wieder Java Basics - Anfänger-Themen 6
A Änderung im Quellcode > javac > keine Änderung in Kons Java Basics - Anfänger-Themen 6
M 1.5er Klassen kompilieren mit 1.6er javac Java Basics - Anfänger-Themen 5
T JDK installiert aber der Befehl "javac" funktionie Java Basics - Anfänger-Themen 5
G javac funzt net Java Basics - Anfänger-Themen 3
K javac in Java-Datei aufrufen Java Basics - Anfänger-Themen 13
G javac starten Java Basics - Anfänger-Themen 5
S javac nicht ausführbar Java Basics - Anfänger-Themen 2
R fehlermeldung von javac bei buchbeispiel Java Basics - Anfänger-Themen 4
G javac wird nicht gefunden Java Basics - Anfänger-Themen 18
D javac und java schliesst immer wieder. ist das normal? Java Basics - Anfänger-Themen 16
G der Befehl "javac" wird nicht erkannt Java Basics - Anfänger-Themen 2
H javac mit meheren packages Java Basics - Anfänger-Themen 2
E jedit findet javac nicht Java Basics - Anfänger-Themen 64
M javac error Java Basics - Anfänger-Themen 7
S javac/javadoc Java Basics - Anfänger-Themen 11
K Javac *.java führt in dos-modus zu "Zugriff Verweigert& Java Basics - Anfänger-Themen 16
loadbrain javac -target 1.5, netbeans 5.5 Java Basics - Anfänger-Themen 13
B javac wird nicht gefunden Java Basics - Anfänger-Themen 8
L javac.exe Java Basics - Anfänger-Themen 3
megachucky Java.exe geht, aber Javac.exe nicht ? Java Basics - Anfänger-Themen 2
D Fehler beim kompilieren einer Java-Datei (javac) Java Basics - Anfänger-Themen 6
S einfaches script mit Eingabeaufforderung starten (javac) Java Basics - Anfänger-Themen 8
Q [javac] Zu blöd für -classpath? Java Basics - Anfänger-Themen 2
T javac und java richtig aufrufen Java Basics - Anfänger-Themen 11
G Befehl javac wird nicht gefunden Java Basics - Anfänger-Themen 8
B javac - error Java Basics - Anfänger-Themen 13
T Probleme mit javac in Eingabeaufforderung Java Basics - Anfänger-Themen 2
C Javac Java Basics - Anfänger-Themen 16
G Javac wird nicht gefunden Java Basics - Anfänger-Themen 9
B javac plötzlich unbekannt? Java Basics - Anfänger-Themen 12
W der befehl javac ist entweder falsch geschrieben. Java Basics - Anfänger-Themen 8
T Ausgabe von javac umleiten Java Basics - Anfänger-Themen 4
R Rekursiv kompilieren mit javac Java Basics - Anfänger-Themen 8
M Path zu javac nur für Administrator auf XP? Java Basics - Anfänger-Themen 2
A Ant Problem: Unable to find a javac compiler; Java Basics - Anfänger-Themen 4
C "javac" aendert Buchstaben ! Java Basics - Anfänger-Themen 8
G Java-1.5-Installation: warum kommt keine javac.exe mit? Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben