01.03 Java installieren
Um mit der Programmierung anfangen zu können, muss zuerst der Computer entsprechend konfiguriert werden.
Schritt 1: Installation des Java Development Kits (JDK)
Wie in Kapitel 1.1 beschrieben, müssen Java-Programme zuerst kompiliert werden. Deshalb benötigen Sie einen entsprechenden Java-Compiler. Diesen können Sie sich – natürlich kostenfrei – von Suns Java-Website herunterladen. Unter Downloads => Java SE wählen Sie die gewünschte Version. Bitte beachten Sie, dass eine neuere Version zwar mehr Funktionen enthält, aber auch voraussetzt, dass der Benutzer Ihres Programms eine ebenso neue Java Runtime Environment (JRE) zum Ausführen Ihrer Anwendung installiert hat. Da Sie am Anfang Ihrer Entwickler-Karriere ohnehin nicht für die breite Öffentlichkeit entwickeln werden, nehmen Sie die neueste Version (aktuell JDK 6 Update 13 – keine Beta-Versionen und keine zusätzlichen Erweiterungen). Anschließend wählen Sie noch Ihr Betriebssystem (Achtung, nicht die 32 Bit Version für ein 64 Bit System oder umgekehrt herunterladen) und die gewünschte Sprache aus und entscheiden sich im darauf folgenden Fenster für die Offline- oder Online-Installation.
Nachdem die Installationsdatei heruntergeladen wurde, muss selbige natürlich ausgeführt werden. Folgen Sie jetzt einfach den Installationsanweisungen und installieren Sie dabei alle verfügbaren Komponenten.
Schritt 2: Installation der Java Runtime Environment (JRE)
Mittlerweile wissen Sie auch, dass zum Ausführen eines Java-Programms eine JRE notwendig ist. Diese wurde aber bereits mit dem JDK installiert und muss somit nicht separat eingerichtet werden. Wenn Sie Ihre Programme weitergeben möchten, dann reicht es aus, wenn auf dem Zielrechner die aktuelle JRE installiert ist. Ein JDK brauchen Sie natürlich nicht. Auf www.java.com kann die JRE einfach heruntergeladen werden. Die JRE enthält die Java Virtual Machine (JVM), welche den kompilierten Java-Byte-Code interpretiert und ausführt.
Schritt 3: Überprüfen der Systemvariablen
Um komfortabler mit Java arbeiten zu können, muss die Systemvariable „Path“ angepasst werden. Hierzu überprüfen Sie bitte, ob diese Systemvariable folgende Einträge enthält
Pfad/Zum/JDK/bin (z. B. C:\Programme\Java\JDK 6\bin)
Pfad/Zur/JRE/bin (z. B. C:\Programme\Java\JRE 6\bin)
und ergänzen Sie sie ggf..
Unter Windows können Sie Systemvariablen über (Rechte Maustaste auf) Arbeitsplatz => Eigenschaften => Erweitert => Umgebungsvariablen anpassen. Wenn Sie Einträge zu der Path-Variablen hinzufügen, separieren Sie die einzelnen Einträge mit Semikolons.
Schritt 4: Testen der Installation
Um die erfolgreiche Installation und Konfiguration zu testen, wechseln Sie bitte in die Eingabeaufforderung/Konsole/Shell/… (je nach Betriebssystem)
Um unter Windows zur Eingabeaufforderung zu gelangen, wählen Sie Start => Ausführen und tippen in das Feld
cmd
. Mit einem Klick auf OK startet die Eingabeaufforderung.
, tippen folgende Zeile ein und bestätigen mit Enter:
java -version
Jetzt sollte auf Ihrem Bildschirm folgende Ausgabe so oder so ähnlich erscheinen:
java version "1.6.0_13"
Java(TM) SE Runtime Environment (build 1.6.0_13-b06)
Java HotSpot(TM) Client VM (build 11.0-b23, mixed mode, sharing)
Ist dies der Fall, haben Sie die JRE korrekt eingerichtet. Ansonsten überprüfen Sie bitte, ob die JRE installiert und in die Path-Variable aufgenommen wurde. Um zu überprüfen, ob das JDK richtig eingerichtet wurde, tippen Sie nun diese Zeile ein und bestätigen abermals mit Enter:
javac -version
Die Bildschirmausgabe sollte nun so oder so ähnlich aussehen:
javac 1.6.0_13
Ist dies der Fall, haben Sie auch das JDK korrekt eingerichtet. Andernfalls überprüfen Sie bitte, ob das JDK korrekt installiert und die Path-Variable zum JDK korrekt gesetzt wurde.
Herzlichen Glückwunsch! Sie haben jetzt Java erfolgreich auf Ihrem Rechner eingerichtet.
hallo, ich verstehe das mit der eingabe aufforderung nicht so. wenn ich dort hinter C:\Users\XXX>javac oder java eingebe kommt die fehlermeldung „Der Befehl javac/java ist entweder falsch geschrieben oder konnte nicht gefunden werden.“…ich hab echt keine ahnung was ich jetzt machen soll weil ich keine ahnung von solchen dingen habe…
Hallo,
möchten Sie ein Java Programm ausführen, oder selbst programmieren? Was haben Sie denn woher runtergeladen und installiert?
Gruß
Stefan
Hi!
Ich habe hier auch schon mal ein Problem.Ich habe Java jdk-6u13-windows installiert. Aber unter Eingabeaufforderung bekomme ich diese meldung das der Befehl java falsch oder nicht gefunden worden ist. Kann mir da vielleicht jemand helfen? habe ich vielleicht doch falsche java installiert?
Hallo Sebastian,
was steht denn in der Umgebungsvariable „PATH“? Unter Windows können alle Umgebungsvariablen abgefragt werden, indem man in der Eingabeaufforderung
set
eingibt. Es folgt eine Auflistung aller eingetragenen Umgebungsvariablen.Gruß
Stefan
Hi! Danke für schnelle Antwort. Habe jetzt den Fehler gefunden . Ich habe falsche platform gewählt (windows) und ich habe 64bit windows vista. Jetzt geht alles und bin stückchen weitergekommen.
Sebastian
p.s. darf ich immer wieder hier was fragen oder sollte ich ein forum dafür benutzen?
Schön, das freut mich 🙂 .
Fragen, die sich auf den Inhalt eines Kapitels beziehen, oder Probleme, die durch die Abarbeitung eines Kapitels entstanden sind, können gerne direkt als Kommentar gestellt werden. Es werden auch Fragen beantwortet, die sich nicht zu 100 Prozent auf das Kapitel beziehen. Dies sollte aber nicht die Regel werden. Generell werden allgemeine Fragen ohnehin schneller in Foren beantwortet. Dort treibt sich eigentlich immer jemand rum, was hier nicht gegeben ist.
Gruß
Stefan
PS: Ich habe das Kapitel um den Hinweis ergänzt, dass man beim Download auf die Bit des Betriebssystems achten sollte.
Hi!
Wieder ich 🙂 wenn ich aber javac -version eingebe kommt das gleiche fehler. ich habe alles neu installiert für 64bit version (vorher deintsalliert) aber bringt nichts. Wie richte ich JDK?
Unter C:\ ist bei mir alles so wie in Schritt 3 beschrieben ist. Aber unter systemvariable fehlt dies:
Pfad/Zum/JDK/bin
Pfad/Zur/JRE/bin
soll ich das einfach so hinzufügen?
Beim aufgabeaufforderungen unter Path steht folgendes:
Path=\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files (x86)\ESTsoft\ALZip;C:\Program Files (x86)\ESTsoft\ALZip
Pathext=.COM;.EXE;.MAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
(warum kann man von Aufgabeaufforderungen nichts kopieren? musste alles mit hand überschreiben)
ich weiss ich frage viel deswegen schon im voraus Vielen dank!!
Gruss
Sebastian
Hallo Sebastian,
kein Problem, ich helfe doch gerne.
Zuerst einmal glaube ich nicht, dass nicht mehr im „PATH“ steht. Sonst würde der Aufruf „java -version“ ebenfalls in einer Fehlermeldung enden. Es kann durchaus sein, dass sich die Werte des „PATH“ über mehrere Zeilen erstrecken.
Um von der Eingabeaufforderung in Windows zu kopieren, kann man wie folgt vorgehen:
1.) Rechte Maustaste in die Konsole
2.) Den Menüpunkt „Markieren“ auswählen
3.) Den zu kopierenden Bereich ganz normal mit gedrückter linker Maustaste markieren
4.) Die Taste „Enter“ bzw. „Return“ auf der Tastatur drücken
Der Text ist nun kopiert.
Die Zeilen
Pfad/Zum/JDK/bin
Pfad/Zur/JRE/bin
sind nur exemplarisch. Dort muss natürlich der Pfad zum Installationsverzeichnis des JDKs und/oder der JRE mit dem Unterverzeichnis bin eingetragen werden. Das hängt ganz davon ab, wo das JDK und ggf. die JRE installiert wurde. Bei mir sehen die Pfade bspw. so aus:
C:\Programme\Java\jdk1.6.0_11\bin
C:\Programme\Java\jdk1.6.0_11\jre\bin
Die Umgebungsvariable „PATH“ muss nun um diese beiden Verzeichnisse ergänzt werden. Heißt: Nach dem letzten Zeichen in „PATH“ muss ein Semikolon eingetragen werden, anschließend der Pfad zum JDK, gefolgt von noch einem Semikolon und dem Pfad zur JRE. Anschließend kann die Umgebungsvariable mit einem weiteren Semikolon abgeschlossen werden.
Die PATH Umgebungsvariable könnte dann in etwa so aussehen:
Path=\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files (x86)\ESTsoft\ALZip;C:\Program Files (x86)\ESTsoft\ALZip;C:\Programme\Java\jdk1.6.0_11\bin;C:\Programme\Java\jdk1.6.0_11\jre\bin;
Ich hoffe das hilft weiter.
Gruß
Stean
Hi!
hmm bei mir steht nur so
Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files (x
86)\ESTsoft\ALZip;C:\Program Files (x86)\ESTsoft\ALZip
obwohl java -version funktioniert nur nicht javac -version
und meine java habe ich in C:Programme installiert also bei mir sieht es so aus
C:\Program Files\Java\jdk1.6.0_13\bin
C:\Program Files\Java\jre6\bin
also habe ich ein unbekante Fehler bei mir? ich habe diese version mit dem namen installiert
jdk-6u13-windows-x64-p
vielleicht ist doch was falsches?
Ciao
Sebastian
Befindest du dich evtl. im Installationsverzeichnis der JRE wenn du
java -version
in die Konsole eintippst? Das könnte nämlich auch der Grund für dieses Verhalten sein. Es sollte aber auf jedenfall funktionieren, wenn du die Umgebungsvariable wie beschrieben erweiterst – egal objava -version
jetzt schon funktioniert oder nicht.Evtl. siehst du die Änderungen auch erst nach einem Neustart des PCs.
Gruß
Stefan
Also java -version funktioniert aber javac -version funktioniert nicht und wie gesagt unter Path fehlt bei mir das ende so wie Du es geschrieben hast. Und wenn uch es eintippe ist sonst alles geschlossen. Ich schaue mal auf dem Laptop da habe ich windows xp 🙂
Naja, dann ergänze doch mal das Ende. Du kannst die Umgebungsvariablen ganz einfach ändern. Unter Vista geht das so:
Start => Rechte Maustaste auf Computer => Eigenschaften => Einstellungen ändern => Den Reiter „Erweitert“ aktivieren => Umgebungsvariablen => „Path“ auswählen => Bearbeiten.
Dort kannst du ganz einfach eigene Pfade hinzufügen. Unter Windows XP funktioniert der Weg, den ich bereits im Artikel angegeben habe.
Das mit dem „du befindest dich im Installationsverzeichnis der JRE“ war anders gemeint. Wenn du dich in der Konsole befindest, dann steht vor dem Cursor ein Pfad. Das ist der Ort, an dem du dich befindest.
Gruß
Stefan
Jetzt sieht es so aus nach dem ich es mit Hand getippt habe
Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files (x
86)\ESTsoft\ALZip;C:\Program Files (x86)\ESTsoft\ALZip;C:\Programme\Java\jdk1.6.
0_11\bin;C:\Programme\Java\jdk1.6.0_11\jre\bin;
ich habe es unter Benutzervariablen geändert oder soll ich unter systemvariablen auch ändern?
aber trotzdem wenn ich javac -version eingebe kommt gleiche meldung . ist das javac -version so wichtig? reicht nicht das es java -version geht?
Das erklärt natürlich einiges. Du dürftest in den Benutzervariablen standardmäßig gar keine Path-Variable haben. Deshalb hast du dort vermutlich auch nur so wenig drinstehen. Ich denke mal, diese Benutzervariable wird ein externes Programm angelegt haben, vermutlich das Programm „ALZip“.
Schau mal unter „Systemvariablen“ nach. Ich wette mit dir, dort steht die JRE in der Path-Variablen 😉 . Und ja, die Variablen müssen unter „Systemvariablen“. Sorry, das habe ich vergessen zu erwähnen.
java -version
muss funktionieren, wenn du Java-Programme ausführen möchtest.javac
benötigst du nur, wenn du Programme programmieren willst. Allerdings kannst du auf diese Funktion verzichten, wenn du eine entsprechende IDE wie NetBeans oder Eclipse verwendest.Ich würde dir aber für den Anfang wärmstens empfehlen ohne IDE zu arbeiten (diesen Hinweis findest du auch in einigen Kapitel des Java Blog Buchs), weil es einfach wichtig ist, dass die Basics sitzen und ein gewisses Grundwissen über Java zu besitzen.
Gruß
Stefan
unter Systemvariablen steht
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files (x86)\ESTsoft\ALZip
aber ohne path am anfang so wie steht path steht oben bei namen der variablen
ja da will ich auch ohne IDE zu prgramieren aber wie kriege ich es hin das javac funktioniert?
wusste nicht das gleich sov iele Problemme bei mnir auftretten.
Danke und warte auf weitere hilfe 🙂
Hi nochmal,
also, ich hab mich mal schlau gemacht, da ich selbst kein Vista Nutzer bin. Die java.exe wird scheinbar direkt in den Windows-Systemordner kopiert. Der Eintrag %SystemRoot%\system32 enthält bereits die java.exe. Deshalb muss in der Path-Variable kein Verweis auf das JRE-Verzeichnis stehen.
Trage bitte einfach in die Systemvariable „Path“ den Pfad zu deinem JDK ein. Dann sollte alles funktionieren. Ggf. musst du den Rechner danach neustarten.
Die meisten Probleme tauchen leider am Anfang auf. Aber wenn es erst einmal läuft, dann läufts 😉 .
Gruß
Stefan
Habe jezt das Pfad für JDK hinzugefügt jetzt sieht es so aus wenn ich set eingebe
Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files (x
86)\ESTsoft\ALZip;C:\Programme\Java\jdk1.6.0_11\bin;C:\Program Files (x86)\ESTso
ft\ALZip;C:\Programme\Java\jdk1.6.0_11\bin;C:\Programme\Java\jdk1.6.0_11\jre\bin
;
und so in Systemvariablen
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files (x86)\ESTsoft\ALZip;C:\Programme\Java\jdk1.6.0_11\bin;
ist es richtig so? weil javac geht weiter nicht
mus diese zeichen am ende des pfades sein ? ;
bei der installation kann ich doch nichts falsch gemacht haben oder?
Dieses Zeichen „;“ ist das Semikolon oder auch Strichpunkt genannt. Es trennt die einzelnen Einträge voneinander. Am Ende muss es nicht unbedingt stehen, schadet aber auch nicht.
Also langsam bin ich ganz ehrlich mit meinem Latein am Ende. Das MUSS so funktionieren. Oder du hast eine ungünstige Konstellation bzw. mir etwas nicht gesagt, weil du nicht weißt, dass es wichtig ist 😉 .
Das Einzige, was mir jetzt noch einfällt, sind folgende Punkte:
1.) Hast du, nachdem du die Systemvariable aktualisiert hast, deinen Computer neugestartet? Falls nein, mach das bitte.
2.) Schau mal in das Verzeichnis „C:\Programme\Java\jdk1.6.0_11\bin“ und überprüfe, ob du dort die Datei „javac(.exe)“ findest. Falls nicht, ist wohl etwas mit der Installation schief gelaufen, oder du hast das falsche Verzeichnis angegeben.
Falls es gar nicht gehen sollte, dann kannst du zur Not auch anders arbeiten:
Du wirst in spätern Kapitel lernen, dass du mittels „javac“ deine Programme erstellst. Wenn „javac“ nicht gefunden wird, kannst du aber trotzdem deine Programme erstellen, indem du nicht z. B.
javac HelloWorld.java
eingibst, sondern den kompletten Pfad, also bspw.C:\Programme\Java\jdk1.6.0_11\bin\javac HelloWorld.java
.Gruß
Stefan
Also Computer habe ich neugestartet das mache ich immer wenn ich was ändere
und eine exe datei von javac habe ich in dem verzeichnis
ich werde mal noch nachts dafür zu verbringen um den Fehler zu finden vielleicht kapiere ich endlich mal was 🙂 nochmals vielen Dank für Deine Hilfe 🙂
Gruß
Sebastian
Geb mal in der Konsole
C:\Programme\Java\jdk1.6.0_11\bin\javac -version
ein und sag was passiert. Ansonsten viel Erfolg beim drüber schlafen 😉 .
Gruß
Stefan
Das war lange Tag und ich dachte ih schaffe es nicht 🙂 aber es geht doch 🙂 und dazu weiss ich wie man pfade in Path schreibt 🙂 ich habe jdk1.6.0_13 und in Pfad stand jdk1.6.0_11 und zwar deswegen weil ich einfach den Pfad von dir kopiert habe (kommentar 8) du hast vielleicht version mit update 11 deswegen hast du 11 eingegeben. noch von paar stunden wusste ichnicht wieso ein pfad so aussieht jetzt wo ich es schon bemerkt habe habe alles nochmal überprüft.
und ich habe noch den path von benutzervariablen zurückgesetzt so wie es vorher war also ohne java aber ich glaube das hat kein einfluss drauf gehabt 🙂
also für mich ist es schon mal ein Erfolg das ich sowas geschafft habe 🙂 natürlich nur mit deine hilfe
ich danke nochmals und hoffe das jetzt besser geht
Gruß
Sebastian
Hallo,
folgendes Problem.
Bevor ich die Sytemvariable „Path“ angepasst habe, funktionierte der Befehl „java -version“, aber „javac -versiion“ nicht.
Nun, nach dem Anpassen der Systemvariable „Path“ ist es umgekehrt und er sagt mir
“ Error: could not open `D:\Java\Programm\lib\i386\jvm.cfg‘ “
Was habe ich falsch gemacht?
Danke schon mal im voraus.
Kann es daran liegen das ich den Installations-Ordner nach dem Intallieren umbenannt habe?
Noch eine Frage ist JDK -> javac? und JRE -> java(also der Befehl in der Eingabeaufforderung)?
Wieso sind den nun meine Kommentare weg? Gelöscht?
Hab mich extra noch hier registriert weil ich dachte „Hier werden Sie geholfen“.
Anscheinend ein Irrtum…
Hallo Niko,
wie schaut denn die Umgebungsvariable PATH aus und woh genau liegt das Installationsverzeichnis der JRE und des JDKs? Es kann durchaus daran liegen, dass der Installationsordner nach der Installation umbenannt wurde – woher soll dein Betriebssystem denn noch wissen, wo was liegt 😉 . Ggf. hilft auch schon eine Neuinstallation.
Wie im Artikel erwähnt, handelt es sich bei java um ein Programm der JRE und bei javac um ein Programm des JDK.
Zum Thema Kommentare: Die abgesendeten Kommentare muss ein Moderator zuerst freischalten. Erst dann erscheinen Sie auch unter dem entsprechenden Beitrag. Hierdurch wird Spam (der leider trotz Spamschutz auftritt) unter den Kapiteln verhindert. Da ich mich in meiner Freizeit (momentan) alleine um das Java Blog Buch kümmere, und auch nicht 24 Stunden am Tag wach bzw. Online bin, bitte ich um Verständnis, falls ich Kommentare nicht immer sofort freischalten kann.
Es besteht aber die Möglichkeit, sich über neue Kommentare zu einem Artikel per Mail informieren zu lassen. Sobald ein Kommentar eine Antwort erwartet, werde ich diesen nach Möglichkeit auch zeitnah beantworten.
Gruß
Stefan
Hallo!
Neu-Installieren hilft nicht wirklich. Allerdings habe ich unter Systemsteuerung Java gefunden wo man Einstellungen für JRE vornehmen kann unter anderem kann man auch eine 2te von Benutzer angelegte JRE-Version anlegen. Bei System steht allerdings immer noch der eine Pfad und ich kann keinen hinzufügen…
Mal sehen ob es funktioniert.
Ansonsten muss ich den Ordner so benannt lassen wie er vor der Installation war, denn da hat es einwandfrei funktioniert und „Hallo Welt“ spuckte die Eingabeaufforderung aus 😀
Mit „Neuinstallation“ meinte ich auch eigentlich eher, dass Java noch mal komplett vom Computer deinstalliert, und anschließend noch einmal neu in den gewünschten Ordner installiert wird. Aber wenn es so jetzt funktioniert, passt ja alles 🙂 .
Gruß
Stefan
Hallo,
erstmal möchte ich mich für diese grandiose Idee eines Buches in Blogform bedanken.
Ich hätte noch eine schnelle alternative Möglichkeit, mit der es möglich ist, sich die PATH-Variablen anzeigen zu lassen.
1. Man drückt dafür die „Windows-Taste“ und die „R-Taste“ (oder Start -> Ausführen)
2. „cmd“ ohne Anführungszeichen eintippen
3. Daraufhin öffnet sich ein Eingabeaufforderungsfenster, in das man „echo %PATH%“ (hier auch wieder ohne die Anführungszeichen) schreibt. Daraufhin werden einem die PATH Variablen angezeigt, ohne dass man sich durch viele Buttons klicken muss.
Gruß Luke
Ich hab alles installiert und auch das mit den Umgebungsvariablen gemacht wiso kommen bei mir immer noch die Fehler? Ich komm einfach nicht weiter 🙁
Hallo sroisma!
Was wurde genau installiert (JRE, JDK, welche Version)? Auf welchem Betriebssystem? Wie sehen genau die Umgebungsvariablen aus? Bei was kommt der/die Fehler? Wie lautet der/lauten die Fehler?
Grüße
Stefan
Also ich habe die JDK 6.19 runtergeladen und installiert. Die JRE6 war ja auch dabei. Ich habe Windows xp 32bit.
Die Umgebungsvariable Path(Wird bei mir so geschrieben und nicht alles gropß.. war schon..) sieht so aus: C:\Programme\PC Connectivity Solution\;C:\Programme\Java\jdk1.6.0_19\bin;C:\Programme\Java\jre6\bin;
In dem Buch Java Intensivkurs steht, dass man auch die Umgebungsvariable CLASSPATH erstellen kann, wenn man einen älteren Pc hat. Dort hab ich auch dei beiden bin- Ordner eingefügt.
Wenn ich versuche javac einzugeben steht da dass es sowas nicht gibt usw. eben die Feheler, die oben schon genannt wurden.
Wenn ich z.B. eine java Datei erstellt hab und sie direct auf die javac Anwedung ziehe wird diese class Datei erstellt, aber keine von beiden klappt wenn ich sie auf die java Anwedung ziehe. Da kommt dann so ein ewig langer Fehler mit einem Error am Ende. Das mit java -version funktioniert auch nicht..
Was hab ich falsch gemacht??
Liegt hier
C:\Programme\Java\jdk1.6.0_19\bin\
die Datei javac.exe und hier
C:\Programme\Java\jre6\bin\
die Datei java.exe? Bitte nicht einfach mit „ja“ beantworten, sondern wirklich kontrollieren!
Dass Path klein und nicht groß geschrieben ist, ist kein Problem. Die Aufnahme der Pfade in die Variable CLASSPATH hingegen nicht nötig.
Haben Sie schon einmal Ihren PC neugestartet? Daran sollte es zwar eigentlich nicht liegen, aber man weiß ja nie.
Grüße
Stefan
Die javac.exe Datei ist in dem JDK Ordner aber die java.exe Datei ist in beiden..
Hier nochmal ein Bild von der Fehlermeldung wenn ich versuche die kompilierte Class-Datei mit java.exe zu starten: http://www.bilder-hochladen.net/files/eoae-1-jpg-nb.html
Wenn javac.exe im JDK und java.exe in Beiden drin ist, sollte das alles eigentlich funktionieren.
Da Sie den Pfad direkt angeben, hat die PATH-Variable keinen Einfluss auf das Ergebnis. Stattdessen kommt es aber zu einem anderen Fehler, nämlich zu einem NoClassDefFoundError. Dieser resultiert daraus, dass Sie den Quellcode in der Java-Datei der java.exe übergeben, was aber falsch ist, wie Sie im nächsten Kapitel sehen werden. Die Java-Datei muss zuerst mit javac.exe zu einer Class-Datei kompiliert, und diese anschließend mit java.exe ausgeführt werden.
Falls sich das Problem noch nicht gelöst hat, gerne noch einmal nachfragen.
Grüße
Stefan
Genau das ist es was nicht funktioniert.. wenn ich versuche die kompilierte CLASS- Datei mit java.exe zu öffnen kommt folgendes: http://img638.imageshack.us/img638/1432/javaproblem.png
Sonst hätte ich ja keine Probleme aber java will einfach nicht öffnen und ich verstehe die Fehlermeldung nicht!
Hallo sroisma,
Sie sehen ebenfalls im nächsten Kapitel, dass beim Kompilieren die Dateiendung (.java) mit angegeben wird, beim Ausführen die Dateiendung (.class) jedoch weggelassen werden muss.
Grüße
Stefan
Hallo srosima,
ich hatte auch das Problem mit dem NoClassDefFoundError wenn man mit java.exe eine class Datei starten will.
Der Pfad war richtig gesetzt (wie von Stefan beschrieben), ABER in der Umgebungsvariable CLASSPATH hat die Quicktime Installation etwas hinterlassen:
CLASSPATH=C:\Program Files\QuickTime\QTSystem\QTJava.zip
Wenn man CLASSPATH löscht mit set CLASSPATH= oder das aktuelle Verzeichnis mit auf nimmt mit set CLASSPATH=.;%CLASSPATH% dann geht es!
In meinen Augen ist das von den JAVA Machern etwas blöd gemacht, denn wenn CLASSPATH leer ist, dann wird automatisch das aktuelle Verzeichnis für CLASSPATH „gesetzt“. Das sieht man im System Property java.class.path von JAVA, welches dann diesen Inhalt hat „.“ (ohne Anführungsstriche) also das aktuelle Verzeichnis.
Wenn man explizit die CLASSPATH Variable setzt, dann ist nur dieser Wert in der java.class.path Property.
java.class.path kann man sich so ausgeben lassen:
System.out.println(System.getProperty(„java.class.path“));
Hi,
ich habe ein Problem mit der Installation von java.
Ich habe die Version JDK 6U21 installiert und das Verzeichniss in PATH eingetragen.
Das Kompilieren mit dem Befehl „javac HalloWelt.java“ funktioniert auch (jedenfalls wird eine .class-Datei erzeugt).
Wenn ich dann aber die Datei ausführen möchte (mit dem Befehl „java HalloWelt“), wird angezeigt : „Error: could not open `c:\Program Files [x86]\Java\lib\amd64\jvm.cfg´ „.
Diese Fehlermeldung kommt auch, wenn ich den Befehl „java -version“ eingebe.
Wenn ich aber „javac -version“ eingebe, erscheint „javac 1.6.0_21.
Wenn ich eclipse öffnen möchte, kommt auch diese Fehlermeldung.
Ich benutze Visa 64bit.
Was habe ich falsch gemacht und wie kann ich java bei mir zum laufen bringen?
vielen Dank für die Antworten
Ich habe noch eine Frage: Kann man einen Quelltext mit java auch so kompielieren, dass eine .exe-Datei entsteht?
Hallo Uli,
diesen Fehler kenne ich leider nicht. Im Zweifelsfall die JRE deinstallieren (evtl. wurde sie versehentlich zweimal installiert und/oder verschoben) und noch einmal neu installieren. Sie können auch einmal die 32 Bit oder die 64 Bit Version ausprobieren.
Java Quelltext wird immer zu Class-Dateien kompiliert. Die Class-Dateien können Sie in ein JAR-File verpacken und dieses auf Wunsch per Doppelklick ausführen. Es gibt auch spezielle Tools, die JAR-Dateien in exe-Dateien umwandeln können. Ohne wirklich wichtigen Grund würde ich das jedoch nicht machen, da hierbei sehr viele ungewünschte Effekte auftreten (können).
Gruß
Stefan
danke für die Hilfe.
Ich hatte vorher noch eine 2.Version von JDK installiert. Diese lässt sich nicht mehr deinstallieren. Immer wenn ich es versuche, erscheint der Fehler Error 1723. Ich habe den Datei-Ordner dieser Version versehentlich gelöscht, es wird aber noch in der Programmliste aufgeführt. Liegt das Problem vielleicht dabei, dass diese andere Version nicht richtig gelöscht ist?
Mit Eclipse hatte es auch nicht funktioniert, aber mit JavaEditor kann ich die Class-Dateien zum Glück jetzt ausführen. Allerdings fände ich es gut, wenn ich diese auch durch die Befehle in der Konsole ausführen könnte(wie empfohlen) und nicht in einer Entwicklungsumgebung.
Hallo Uli,
ja, das liegt mit ziemlich hoher Wahrscheinlichkeit daran. Dateien und Ordner verschieben und löschen, die eigentlich zu einem Programm gehören, ist immer schlecht. Evtl. hilft dieser Thread weiter: http://forums.sun.com/thread.jspa?threadID=5389799
Grüße
Stefan
Hallo,
habe jetzt versucht, den Pfad in Systemeigenschaften/Umgebungsvariablen/Systemvariablen zu erstellen (Vista). Ein Pfad/PATH-Verzeichnis gab es noch nicht, also habe ich nach Anleitung eines erstellt. Im Wert steht folgendes drin: C:\Programme\Java\jdkl.6\bin;C:\Programme\Java\jre6\bin
etwas anderes steht nicht dirn. Von „Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files (x
86)\ESTsoft\ALZip;C:\Program Files (x86)\ESTsoft\ALZip“ steht nichts, und ich weiß auch nicht wo ich das hernehmen soll. Ich bllick irgendwie nicht mehr durch.
Wenn ich jetzt java -version eingebe, kommt – wie immer – „ist entweder falsch geschrieben oder konnte nicht gefunden werden. Wenn ich den ganzen Pfad in der Eingabeaufforderung mit eingebe „C:\Programme…java -version, funktioniert es, also habe ich den Pfad falsch gesetzt.
Oder fehlt noch irgendwas?
Hallo Sarah,
was passiert, wenn du in der Windows-Eingabeaufforderung „set“ und dann „Enter“ eintippst? Dort müsstest du dann einen Path-Eintrag haben. Kopiere diesen doch bitte einmal hierher (um in der Windows-Konsole zu kopieren: Rechte Maustaste => Markieren => gewünschten Bereich markieren => Enter). Zur Kontrolle für dich: Kopiere die einzelnen Einträge aus deiner Path-Variable doch einmal in die Adresszeile deines Explorers und kontrolliere, ob a) das Verzeichnis gefunden wird und ob b) sich in dem Verzeichnissen eine java.exe und eine javac.exe befindet. Falls a) und/oder b) nicht zutrifft, wurde der falsche Pfad in die Path-Variable kopiert.
Beste Grüße
Stefan
C:\Users\Sarah>set
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\Sarah\AppData\Roaming
asl.log=Destination=file;OnFirstLog=command,environment
CLASSPATH=.;C:\Program Files\Java\jre6\lib\ext\QTJava.zip
CommonProgramFiles=C:\Program Files\Common Files
COMPUTERNAME=SARAH-PC
ComSpec=C:\Windows\system32\cmd.exe
DFSTRACINGON=FALSE
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=\Users\Sarah
LOCALAPPDATA=C:\Users\Sarah\AppData\Local
LOGONSERVER=\\SARAH-PC
NTIPath=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files
\NewTech Infosystems\NTI Backup Now 5\;
NUMBER_OF_PROCESSORS=2
OS=Windows_NT
Path=/Zur/JRE/bin
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
Pathtem=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 6 Model 23 Stepping 10, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=170a
ProgramData=C:\ProgramData
ProgramFiles=C:\Program Files
PROMPT=$P$G
PUBLIC=C:\Users\Public
QTJAVA=C:\Program Files\Java\jre6\lib\ext\QTJava.zip
SESSIONNAME=Console
SystemDrive=C:
SystemRoot=C:\Windows
TEMP=C:\Users\Sarah\AppData\Local\Temp
TMP=C:\Users\Sarah\AppData\Local\Temp
TRACE_FORMAT_SEARCH_PATH=\\NTREL202.ntdev.corp.microsoft.com\4F18C3A5-CA09-4DBD-
B6FC-219FDD4C6BE0\TraceFormat
USERDOMAIN=Sarah-PC
USERNAME=Sarah
USERPROFILE=C:\Users\Sarah
windir=C:\Windows
C:\Users\Sarah>Enter
Der Befehl „Enter“ ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
C:\Users\Sarah>
So richtig? Oder set_Enter?
Danke und liebe Grüße, Sarah
Hallo Sarah,
Enter war eigentlich nur dazu gedacht, dass die Eingabe von „set“ mit einer Betätigung der Taste „Enter“ abgeschlossen wird. Passt also so schon. Der „Path“ ist falsch gesetzt. Dort steht ja: „Path=/Zur/JRE/bin“. Ich glaube kaum, dass man in diesem Verzeichnis die JRE findet. Dort müsste eher der vorher angegebene Wert (C:\Programme\Java\jdkl.6\bin;C:\Programme\Java\jre6\bin) stehen. Da ist beim setzen der Path-Variable wohl was schief gelaufen.
Beste Grüße und frohe Weihnachten,
Stefan
Es wurden beide Pfade nicht gefunden, also muss ich jetzt irgendwie erstmal weiterbasteln. Auch wenn ich grade nicht weiß, warum. Naja, vll fällt mir irgendwo noch was auf. Danke erstmal. Sarah
Also er findet keinen der beiden Pfade. Auch wenn mir einfach kein Fehler auffällt. Aber Danke erstmal. Sarah
Hey Leute,
ich habe „Java Update 23“ (ich denke dass das so hies) über „Systemsteuerung -> Software“ deinstalliert, aber wenn ich dort JDK deinstallieren will, dann kommt da eine Meldung „Schwerwiegender Fehler bei der Installation“.
Wenn ich auf „Ändern“ gehe, dann kommt da das Auswahlfenster und man kann die Erweiterungen wählen, die man installieren möchte.
Dann kommt aber wieder eine Fehlermeldung:
http://www.bilder-space.de/show_img.php?img=3c6307-1297000432.jpg&size=original
Ich weis nicht was ich jetzt machen soll :/
Eclipse
Versuchen Sie doch einmal das JDK erneut zu installieren und dann über die Systemsteuerung zu deinstallieren (nicht das Update).
Gruß
Stefan
Hab ich schon versucht, da öffnet sich der Windows Installer, dann blinkt das rote java Fenster kurz auf und eine Meldung kommt, dass es bereits installiert ist und ob ich da nochmal tun möchte.
Ich klicke auf „Ja“ und der Windows Installer konfiguriert das usw.
Dann blinkt wieder kurz das Java Fenster auf und er fragt mich erneut, ob ich es noch einmal installieren möchte, weil es schon da ist ^^
Eclipse
Dann versuchen Sie es noch einmal zu installieren.
Gruß
Stefan
Das versuch ich ja immer, aber nachdem der Windows Installer kurz was gemacht hat, fragt er einfach erneut nach
Vielen Dank für die Mühe =)
Evtl. mal versuchen eine andere Version zu installieren. Oder alle Einträge in der Registry und alle Programmdateien und Ordner löschen.
Grüße
Stefan
Wo bekomme ich denn eine andere Version her?
Ich bin auf den Link oben in diesem kapitel gegangen und hab das dann installiert.
Und ich weis nicht wie und wo ich Einträge in der Registry löschen soll. Ich bin 14 🙂
Okey, ich habs hingekriegt.
Wenn jemand das selbe Problem haben sollte, dann kann er mich unter lunar.eclipse@web.de gerne fragen.
Eclipse
PS: falls dieser beitrag nicht angenommen wird, ist das nicht schlimm
Hallo Eclipse,
super, wenn du dein Problem lösen könntest. Noch toller fände ich es, wenn du die Lösung hier posten könntest 🙂 .
Danke und Grüße
Stefan
Oje…
Naja, also ich hab mir da so ein Windows Programm gedownloaded, das aus dem Downloadcenter gestrichen wurde, weil es möglicherweise anderen programmen schaden.. 😛
Das Programm heist „Windows Install Clean Up“ und ist glaube ich eigentlich für OpenOffice gedacht.. (ó_O)
Da entfernt man denke ich alle registry-Einträge von dem Programm das man weghaben will, aber der Ordner und die Dateien sind möglicherweise noch da. Das Problem ist, dass man die Dateien nicht löschen kann, weil das irgendwie gesperrt ist, aber wenn man Java einfach wieder in den gleichen Ordner mit den Dateien installiert müsste das gehen. Bei mir funktioniert es jetzt jedenfalls 🙂
OK, danke für die Erläuterung 🙂
Gruß
Stefan
Hi,
erstma danke für diese Klasse Idee und auch für die tolle Umsetzung dieses Buchblogs.
Folgendes funktioniert (nicht):
„java -version“ ist nicht möglich, solange ich nicht folgenden Befehl vorher exekutiert habe: „cd C:\Programme\Java\jdk1.6.0_24\bin“
„javac -version“ funzt hingegen schon
Folgende Meldung kommt bei Eingabe von „java -version“:
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
Meine Variablen sind wie folgt gesetzt:
Path=[IRGENDWELCHE ANDEREN PFADE];C:\Programme\Java\jdk1.6.0_24\bin;C:\Programme\Java\jdk1.6.0_24\jre\bin;
CLASSPATH=.;C:\Programme\Java\jdk1.6.0_24\bin;C:\Program Files\Java\jre6\lib\ext
\QTJava.zip;C:\PROGRA~1\IBM\SQLLIB\java\db2java.zip;[IRGENDETWAS ANDERES]
Den CLASSPATH habe ich bei einem meiner Lösungsversuche um „C:\Programme\Java\jdk1.6.0_24\bin“ ergänzt, der restliche CLASSPATH war schon so – bin unschuldig 😉
Ich will da jetzt nicht willkürlich irgendwelche kritischen Variablen posten, genügen diese Infos jedoch nicht, gebe ich gern mehr Preis.
Ich probiere schon seit Stunden herum, bin jedoch jetzt wirklich am Ende meiner Weisheit. Irgendeinen Tipp? Bin für jeden Lösungsversuch wirklich dankbar. Thx;[MuhTuhls.}
Hi,
da ist scheinbar etwas komplett schief gegangen. Haben Sie schon einmal versucht alles komplett zu deinstallieren (nicht drüber installieren), PC neustarten und dann noch einmal zu installieren?
Grüße
Stefan
Hallo,
gleich mal ’ne peinliche Frage: Wie deinstalliere ich JDK? Ich habe im Internet gesucht, dort gibt es aber immer nur Unistalltools für JRE. Auch wie ich die Java-Ordner durchsucht habe, habe ich kein Uninstallroutineprogramm gefunden. Und händisches Lösungen von C:\Program Files\Java bringst a ned.
Andere Frage: Warum /komplett/ schief gegangen? Ich als Leihe dacht nämlich: „javac“ geht und „java“ geht nur im „richtigen“ Ordner – naja, wahrscheinlich muss ich als Win7-User irgendeine Variable umschreiben, die unter XP schon standardmäßig gesetzt ist.
Danke für alle Auskünfte!
lgMuTu.}\
Hallo,
unter Windows kann man eigentlich so ziemlich jedes Programm komplett über die Systemsteuerung => „Programme deinstallieren“ deinstallieren.
Da die Ordner bei Ihnen auf den ersten Blick richtig gesetzt sind, und die Fehlermeldung „java/lang/NoClassDefFoundError: java/lang/Object“ nicht unbedingt typisch ist ( 😉 ) gehe ich davon aus, dass da irgendwo komplett was schiefgegangen ist.
Bitte löschen Sie auch die von Ihnen getätigten Änderungen aus den Umgebungsvariablen raus, bevor Sie das JDK neu installieren.
Als Windows 7-Nutzer müssen Sie nichts besonderes machen, was Sie nicht auch unter bspw. Windows XP machen müssten.
Grüße
Stefan
Hi,
falls bei Anderen ein ähnliches Problem auftritt: Es lag an meiner Path-Variable. Den JDK- bzw. den JRE-Pfad habe ich einfach an den Anfang der Auflistung geholt.
lg[MuhTuhls.}\
PS: Das Java-Deinstallieren wird erst mit Computerneustart „wirksam“, ist aber über die Systemsteuerung normal möglich – trotzdem: der Path muss händisch zurückgesetzt werden.
@stefan: Thx für die freundliche Hilfestellung.
kann mir villeicht bitte jemand helfen.
habe folgendes problem:
möchte gerne auf meinen pc mein arbeitsprogramm öffnen, aber aus irgend einen grund geht das jetzt einfach nicht mehr. es erscheint immer eine fehlermeldung worauf geschrieben steht : java/lang/noclassdeffounderror java/lang/object
Hallo Tom,
Sie sollten sich an den Hersteller Ihres PC Arbeitsprogramms wenden. Nur dieser kann Ihnen zuverlässig weiterhelfen.
Beste Grüße
Stefan
hallo stefan,
vielen dank für deiner rückmeldung, mitlerweile habe ich festgestellt das auch der internet explorer 8 mein windows update blockiert ( internet explorer sicherheitswarnung).
beste grüße
tom
Ich habe auch das Problem mit der Path Variabel.
Bei mir steht nur:
Name der Variabel: Path
Wert der Variabel: C:\Program Files\Java\jdk1.7.0_05\bin ; C:\Program Files\Java\jdk1.7.0_05\jre\bin
und im cmd: Der Befehl „java“ ist entweder falsch geschrieben oder konnte nicht gefunden werden.
Und die Pfade existieren auch? Also wenn die Pfade in die Adressleiste des Explorers kopiert werden, wird der Ordner gefunden und darin befindet sich auch eine java.exe?
Ja… Ich habe 3x nachgeguckt… :/
Was wird ausgegeben, wenn Sie in der Konsole
„C:\Program Files\Java\jdk1.7.0_05\bin\java“
bzw.
„C:\Program Files\Java\jdk1.7.0_05\jre\bin\java“
eingeben?
In welcher Konsole?
cmd oder explorer?
Die Konsole heißt unter Windows Kommandozeile, abgekürzt cmd.
bei beiden
= das system kann den angegebenen Pfad nicht finden
entschuldigung ich habe etw. falsches eigegebn…
es kommt raus:
– Verwendung […]
-wobei options folgendes umfasst: […]
Was wurde denn eingegeben, damit es funktioniert? Und was wurde vorher eingegeben, als es nicht funktioniert hat?
Ich habe vor her „cd java“ eigegeben (es also als eigegen ordern gesehen)
und als ich nur „java“ eigegeben habe hat es funktioniert…
Also funktioniert es jetzt?!
Zum teil… Also in beiden Verzeichnissen findet er Java, ABER bei der gegenprobe mit dem befehl „javac -version“ kommt die Ausgabe: „Der Befehl „javac“ ist entweder falsch geschrieben oder konnte nicht egfunden werden…
Also die javac.exe muss im Verzeichnis
C:\Program Files\Java\jdk1.7.0_05\bin\javac.exe
liegen. Wenn sie das nicht tut, wurde das JDK nicht richtig installiert. Was passiert, wenn Sie diesen kompletten Pfad in Anführungszeichen in die Konsole schreiben?
soo… nach dem gefühltem 100.000 versuch hat er die version ENDLICH gefunden!
Vielen Dank Stefan!