2 Java SDKs

scuzzle

Mitglied
Hallo,

Ich habe zwei Java SDKs auf meinem System installiert. Einmal die JDK 1.2.2 unter C:\jdk1.2.2 und die JDK 1.6 unter C:\Programme\Java\jdk1.6.0_18. Die alte war schon drauf, die neue hab ich installiert weil Netbeans mindestens 1.5 wollte.

Netbeans läuft zwar ohne Probleme und nimmt die neuere Version, aber wie weiß ich welche Version verwendet wird wenn ich etwas in der Kommandozeile mit javac kompiliere, bzw wie kann ich es einstellen? Ich hab gedacht ich könnte es mit javac -h oder mit javac -version herausfinden, aber diese befehle kennt javac wohl nicht.

Danke schon mal für alle Antworten.
 
[c]java -version[/c]

oder ich glaube du kannst es auch in den Umgebungsvariablen notfalls einstellen.

[c]C:\Programme\Java\jdk1.6.0_17\bin;[/c] steht z.B. bei mir in der Path (Umgebungsvariable)
 
Danke für die Antworten!

Also in der path Variable steht zwar der Pfad zur jdk1.2.2\bin drin, java -version sagt aber trotzdem 1.6.0_18. egal was ich in die path Variable reinschreibe. Ich hab das bei System->Erweitert->Umgebungsvariablen geändert, ist das richtig? Oder gibt es für den DOS Eingabemodus eine Variable die extra gesetzt werden muß?

Die alte Version hab ich von CD installiert, als ich die Software für eine Java SmartCard installiert habe. Da ich nicht sicher war ob mit der neuen alles funktioniert (also die Anwendungen für die Karte) hab ich erst mal die alte genommen. Jetzt wollte ich ausprobieren obs mit der neuen auch geht.
 
Da Du die 1.6 später installiert hast, steht diese vermutlich weiter Vorne in PATH und wenn Du einfach nur javac in der Konsole aufrufst wird die 1.6 verwendet.
Gibt doch einfach mal path in der Konsole aus, dann siehst Du was da tatsächlich drin steht.
 
Hm also wenn ich path in der Konsole ausgeben lasse steht komischerweise auch nur die jdk1.2.2\bin drin. Die 1.6.0_18 ist nirgends zu finden, aber java -version gibt version 1.6.0_18 aus.
 
Wenn in PATH kein C:\Programme\Java\jdk1.6.0_18\bin drin steht, wird beim einfachen Aufruf von javac denn wohl die 1.2 verwendet. Hast Du die 1.6er JRE unabhängig vom JDK installiert? Und in welchem Verzeichnis liegt die denn?
Zumindest dieses sollte in Path zu finden sein, denn irgendwoher muss das OS ja wissen, dass es beim Auruf von java die 1.6er verwenden soll.

Bin mir nicht sicher, aber bei der Installation des JDK muss man nachträglich selbst die Umgebungsvariable anpassen. Würde wiederum dafür sprechen, dass bei javac die 1.2 verwendet wird.
 
Hmm,

ein Kollege von mir hat sich das mal genauer angeguckt. Die aktuelle Java-Version wird unter anderem
auch in der Registry eingestellt. Es soll aber auch unter C:\Windows\System32 eine Datei geben die
festlegt welche Java-Version verwendet wird. Da wie gesagt ein Kollege von mir rausgefunden hat,
kann ich dir leider nicht genau sagen, welche Datei das ist. Aber ich hoffe das hilft dir etwas
weiter.
 
Es soll aber auch unter C:\Windows\System32 eine Datei geben die
festlegt welche Java-Version verwendet wird. Da wie gesagt ein Kollege von mir rausgefunden hat,
kann ich dir leider nicht genau sagen, welche Datei das ist.
Bei der Installation werden ferkeligerweise java.exe und javaw.exe in das Verzeichnis \Windows\System32 kopiert.
 
Danke nochmals,

ich hab jetzt herausgefunden dass wenn ich den Pfad für die neu SDK eintrage die neue ausgeführt wird und bei javac -version auch die aktuelle Version angezeigt wird. Schreib ich in die Path Variable wieder den alten Pfad dann kommt bei javac -version wieder nichts. Den javac -version Befehl gab es damals also wohl noch nicht.
 

Neue Themen


Zurück
Oben