it-swarm.com.de

Wie kann ich die Java Runtime-Version unter Windows (7) ändern?

Wie kann ich die Java-Laufzeitversion unter Windows ändern?.

Ich habe Java 7 für einige Tests installiert und brauche jetzt das alte Java6 als Systemstandard, aber ich möchte Java 7 nicht deinstallieren (ich brauche es für spätere Tests). Kann ich das vom System verwendete JRE in der Systemsteuerung/Java/JRE-Registerkarte ändern? Ich kann die vom Benutzer verwendete Version ändern/bearbeiten/hinzufügen/löschen, nicht jedoch das vom System verwendete.

57
tomkpunkt

Für Java applications, d. H. Programme, die (normalerweise) als .jar-Dateien ausgeliefert und mit Java -jar xxx.jar oder über eine Verknüpfung, die dasselbe tut, gestartet werden, wird die JRE, die gestartet wird, die erste sein, die in der PATH gefunden wird. 

Wenn Sie eine JRE oder ein JDK installiert haben, befinden sich die .exes wahrscheinlich unter den Verzeichnissen wie C:\Program Files\JavaSoft\JRE\x.y.z. Ich habe jedoch festgestellt, dass einige "out-of-the-box" Windows-Installationen (auch?) Kopien von Java.exe und javaw.exe in C:\winnt\system32 (NT und 2000) oder C:\windows\system (Windows 95, 98) haben. Dies ist normalerweise eine ziemlich ältere Version von Java: 1.3, vielleicht? Sie sollten Java -version in einem Befehlsfenster ausführen, um zu überprüfen, ob Sie keine veraltete Java-Version ausführen.

Sie können die PATH-Einstellung natürlich außer Kraft setzen oder auch auf sie verzichten, indem Sie den Pfad zu Java.exe/javaw.exe explizit in Ihrer Befehlszeile oder in der Verknüpfungsdefinition angeben.


Wenn Sie applets vom Browser aus ausführen oder möglicherweise auch Java Web Start-Anwendungen (sie sehen insofern aus, als hätten sie ein eigenes Fenster, starten Sie sie jedoch über den Browser), können Sie wählen JRE wird durch eine Reihe von Registrierungseinstellungen bestimmt:

Key: HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment
Name: CurrentVersion
Value: (e.g.) 1.3

Weitere Registrierungsschlüssel werden mit diesem Schema erstellt:

(e.g.) 
HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment\1.3   
HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment\1.3.1

eine für die Hauptversion und eine, die die Nebenversionsnummer enthält. Jeder dieser Schlüssel hat Werte wie diese (Beispiele gezeigt):

JavaHome    : C:\program Files\JavaSoft\JRE\1.3.1
RuntimeLib  : C:\Program Files\JavaSoft\JRE\1.3.1\bin\hotspot\jvm.dll
MicroVersion: 1

... und Ihr Browser prüft anhand dieser Einstellungen, welche JRE gestartet werden soll.

Da sich die Java-Versionen häufig ändern, gibt es jetzt einen "Assistenten", der "Java-Systemsteuerung", mit dem Sie die Java-Version Ihres Browsers manuell wechseln können. Dies funktioniert für IE, Firefox und wahrscheinlich auch für Opera und Chrome: Es ist das Java-Applet System Settings in Windows. Sie können eine der installierten JREs auswählen. Ich glaube, dass der Assistent mit diesen Registry-Einträgen spielt.

Wenn Sie wie ich sind und alte Java-Versionen durch einfaches Löschen von Verzeichnissen "deinstalliert" haben, finden Sie diese "Geister" auch in der Auswahl. Stellen Sie daher sicher, dass die von Ihnen gewählte JRE einer intakten Java-Installation entspricht.


In einigen anderen Antworten wird empfohlen, die Umgebung Variable Java_HOME festzulegen. Dies ist mittlerweile veraltete Beratung. Sun kam um Java 2 zu der Erkenntnis, dass diese Umgebungseinstellung ist 

  1. unzuverlässig, da Benutzer es oft falsch einstellen, und 
  2. dies ist unnötig, da es für die Laufzeitumgebung leicht ist, die Java-Bibliotheksverzeichnisse zu finden, da sie wissen, dass sie sich in einem festen Pfad relativ zu dem Pfad befinden, von dem aus Java.exe oder javaw.exe gestartet wurde. 

Es gibt kaum noch moderne Java-Software, die die Umgebungsvariable Java_HOME benötigt oder respektiert.


Mehr Informationen: 

... und einige nützliche Informationen zur Unterstützung mehrerer Versionen:

74
Carl Smotricz

Ich arbeite auf UNIX-ähnlichen Maschinen, aber vor kurzem musste ich mit Java auf einem Windows 7-Computer arbeiten. Ich hatte dieses Problem und das ist das, was ich gelöst habe. Es hat richtig für mich funktioniert, also hoffe ich, dass es für jeden verwendet werden kann, der dieses Problem in der Zukunft hat.

Diese Schritte werden in Anbetracht einer Java-Standardinstallation auf Laufwerk C erläutert. Sie sollten das Notwendige ändern, falls Ihre Installation keine Standardinstallation ist.

Ändern Sie den Java-Standard VM unter Windows 7

Angenommen, wir haben Java 8 installiert, aber aus irgendeinem Grund möchten wir Java 7 beibehalten.

1- Starten Sie eine cmd als Administrator

2- Gehe zu C:\ProgramData\Oracle\Java

3- Benennen Sie das aktuelle Verzeichnis javapath in javapath_ <version_it_refers_to> um. Beispiel: rename javapath javapath_1.8

4- Erstellen Sie ein javapath_ <version_you_want_by_default> Verzeichnis. Beispiel: mkdir javapath_1.7

5- cd hinein und erstellen Sie die folgenden Links:

cd javapath_1.7
mklink Java.exe "C:\Program Files\Java\jre7\bin\Java.exe"
mklink javaw.exe "C:\Program Files\Java\jre7\bin\javaw.exe"
mklink javaws.exe "C:\Program Files\Java\jre7\bin\javaws.exe"

6- cd out und erstellen Sie einen Verzeichnislink javapath , der auf den gewünschten javapath zeigt. Beispiel: mklink /D javapath javapath_1.7

7- Öffnen Sie das Register und ändern Sie den Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\CurrentVersion , um den Wert 1,7 zu ​​erhalten

Wenn Sie an dieser Stelle Java -version ausführen, sollten Sie feststellen, dass Sie Java Version 1.7 verwenden:

Java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)

8- Schließlich ist es eine gute Idee, die Umgebungsvariable Java_HOME zu erstellen. Dazu erstelle ich in C:\Programme\Java einen Verzeichnislink mit dem Namen CurrentVersion, der auf die Java-Version verweist, an der ich interessiert bin. Beispiel:

cd C:\Program Files\Java\
mklink /D CurrentVersion .\jdk1.7.0_71

9- Und wenn dies getan ist:

  • Klicken Sie mit der rechten Maustaste auf Arbeitsplatz und wählen Sie Eigenschaften.
  • Wählen Sie auf der Registerkarte Erweitert die Option Umgebungsvariablen aus, und bearbeiten/erstellen Sie Java_HOME, um darauf hinzuweisen, wo sich die JDK-Software befindet, in diesem Fall C:\Programme\Java\CurrentVersion
58
Mia

Seit Java 1.6 ist in% windir%\system32 eine Java.exe installiert, die eine Befehlszeilenoption "-version" unterstützt. Sie können dies verwenden, um eine bestimmte Version auszuwählen, die ausgeführt werden soll, z.

Java -version:1.7 -jar [path to jar file]

führt eine jar-Anwendung in Java 1.7 aus, falls diese installiert ist.

Die Oracle-Dokumentation finden Sie hier: http://docs.Oracle.com/javase/6/docs/technotes/tools/windows/Java.html

25
Jules

Einmal habe ich meine Java-Version auf 8 aktualisiert, wie vom Browser vorgeschlagen. Ich hatte mich jedoch für die Deinstallation der vorherigen Java 6-Version entschieden, die ich zum Codieren meiner Projekte verwendet habe. Wenn ich den Befehl in .__ eingebe. "Java-version" in cmd zeigte er 1.8 an und ich konnte Eclipse IDE nicht auf Java 1.6 ausführen. 

Bei der Installation des Java 8-Updates für den Browser wurde die Systemvariable "PATH" mit "C:\ProgramData\Oracle\Java\javapath" an den Anfang geändert. Der neu hinzugefügte Pfad zeigte auf Java Version 8. Also entfernte ich diesen Pfad aus der Systemvariablen "PATH" und alles funktionierte einwandfrei. :)

6

Gehen Sie zu Systemsteuerung -> Java Hier können Sie die aktive Version auswählen

4
Shazia Tabassum

Sie müssen lediglich die Umgebungsvariable PATH in Windows so einstellen, dass sie auf das Java-Bin-Verzeichnis anstelle des Java-7-Verzeichnisses verweist. 

Klicken Sie mit der rechten Maustaste auf Arbeitsplatz> Erweiterte Systemeinstellungen> Erweitert> Umgebungsvariablen

Wenn eine Java_HOME-Umgebungsvariable vorhanden ist, setzen Sie diese ebenfalls auf das richtige Verzeichnis.

3
David Young

Wenn Sie Windows 10 oder Windows Server 2012 verwenden, ändern Sie die Java-Laufzeitversion folgendermaßen:

  1. Öffne regedit mit 'Run'
  2. Navigieren Sie zu HKEY_LOCAL_MACHINE -> SOFTWARE -> JavaSoft -> Java Runtime Environment
  3. Hier sehen Sie alle auf Ihrem PC installierten Java-Versionen. Für mich habe ich mehrere Versionen von Java 1.8 installiert, daher werden hier die Ordner 1.8, 1.8.0_162 und 1.8.0_171 angezeigt
  4. Klicken Sie auf den Ordner '1.8' und doppelklicken Sie dann auf die Schlüssel JavaHome und RuntimeLib. Ändern Sie die Versionsnummer in die Java-Version, auf der Ihr PC ausgeführt werden soll. Wenn der Wert des Schlüssels beispielsweise "C:\Programme\Java\jre1.8.0_171" lautet, können Sie dies in "C:\Programme\Java\jre1.8.0_162" ändern.
  5. Sie können die Versionsänderung dann überprüfen, indem Sie in der Befehlszeile "Java-version" eingeben.
0
Harvey Lin

Aktualisieren Sie Ihre Umgebungsvariablen

Stellen Sie sicher, dass der Verweis auf Java/bin in 'Path' auf dem neuesten Stand ist. Dies kann automatisch sein, wenn Sie Java_HOME oder ein gleichwertiges Set haben. Wenn Java_HOME gesetzt ist, aktualisieren Sie es einfach, um auf die ältere JRE-Installation zu verweisen.

0
Syntax