Java-Fehler beim Öffnen des Registrierungsschlüssels


109

Ich erhalte diese Fehlermeldung, wenn ich versuche, an der Eingabeaufforderung etwas mit Java zu tun:

Error opening registry key 'Software\JavaSoft\Java Runtime Environment.3'
Error: could not find Java.dll
Error: could not find Java 2 Runtime Environment

Ich habe vor ein paar Tagen versucht, Java-Verzeichnisse und -Registrierungen zu löschen. Ich habe den Computer neu gestartet und Java hat immer noch gut funktioniert. Dann habe ich es heute erneut gestartet und jetzt erhalte ich diesen Fehler. Ich habe versucht, zu deinstallieren und neu zu installieren, aber das scheint nicht zu funktionieren. Ich habe die neueste Java-JRE installiert und den Pfad in den Umgebungsvariablen festgelegt. Hat jemand eine Ahnung, wie man das behebt?


Ich habe versucht, Java über die Eingabeaufforderung zu deinstallieren, und es hat mein Deinstallationsprogramm durcheinander gebracht. Also habe ich den Ordner manuell gelöscht und die dazugehörigen Registrierungen gelöscht. Danach habe ich Java neu gestartet und neu installiert und es hat bis zu meinem nächsten Neustart einwandfrei funktioniert.
gFu

1
Sie versuchen, nach dem Neustart eine Neuinstallation durchzuführen? Vielleicht ist das dritte Mal der Reiz
Atreys

Ja das habe ich, funktioniert immer noch nicht.
gFu

Haben Sie versucht, Ihre anderen Dateien zu sichern und Ihren Computer neu zu formatieren? Danach könnten Sie wahrscheinlich eine Neuinstallation von Java durchführen. Aber diese Methode könnte übertrieben sein
Atreys

1
Irgendwie habe ich es für mein spezielles Problem gelöst, indem ich die Laufzeit heruntergeladen habe, obwohl ich JDK bereits installiert hatte. Ich lasse dies hier für den Fall, dass das tatsächlich für andere funktioniert.
Dave

Antworten:


184

Stellen Sie sicher , entfernen Sie eine java.exe, javaw.exeund javaws.exeaus dem Windows\System32Ordner , und wenn Sie ein x64 - System haben (Win 7 64 Bit) auch gleich unter tun Windows\SysWOW64.

Wenn Sie sie an diesen Orten nicht finden können, löschen Sie sie von C:\ProgramData\Oracle\Java\javapath.


7
Nachdem ich die ausführbaren Dateien "Java" aus meinem System32-Ordner entfernt hatte, musste ich die JRE neu installieren. Danach war mein Problem gelöst. Danke für den Ausgangspunkt.
Dangowans

1
Nach einer Installation des Sicherheitspatches konnte ich Eclipse aufgrund dieses Fehlers nicht öffnen. Vielen Dank! Ihre Lösung hat funktioniert. Aber ich frage mich, was hier der wahre Grund ist.
pvarma

1
Hat für mich gearbeitet! Danke ! Musste auch die JRE neu installieren.
Kbonnelly

1
Können Sie mir bitte sagen, wie sich diese Dateien im Ordner system32 auswirken?
Rabia Naz Khan

Führen Sie "where java" aus, um den Speicherort der oben genannten ausführbaren Dateien anzuzeigen. Meins, wo auf C: \ Programme (x86) \ Gemeinsame Dateien \ Oracle \ Java \ javapath
Charis Moutafidis

85

Sie finden einen Ordner mit dem Namen " Oracle " im ProgramData-Ordner auf Ihrem Windows-Laufwerk. Entfernen Sie den Ordner. Hoffe es wird funktionieren. In meinem Fall ist mein Installationslaufwerk C und mein Pfad ist C: \ ProgramData \ Oracle


@lese du willkommen. Schön zu hören, dass dies für Sie funktioniert.
Shuvankar Paul

8
Alternativ entfernt C:\ProgramData\Oracle\Java\javapathaus dem Windows - PathUmgebungsvariable
Gediminas Rimsa

@GediminasRimsa, ich bin nicht sicher, ob diese Pfadumgebungsvariable in jedem Fall vorhanden ist. Aber danke für den Kommentar.
Shuvankar Paul

Ich habe den Pfad aus den Umgebungsvariablen entfernt, musste aber dennoch den Oracle-Ordner aus dem ProgramData-Ordner entfernen, damit er funktioniert.
Irena Rich

@GediminasRimsa Ich musste tatsächlich die Umgebungsvariable entfernen, nachdem ich den Oracle-Ordner in meinen ProgramData
Alyosha_Karamazov

21

Ich hatte ein ähnliches Problem. Ich hatte JDK7 Update 1 installiert, konnte es aber nicht verwenden (wahrscheinlich, weil ich ein JRE6 gefunden habe, das ich nach der Installation von JDK7 gelöscht habe). Die Deinstallation von JDK7 war nicht möglich. Die Lösung bestand darin, die JRE-Registrierungseinträge manuell hinzuzufügen.

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment]
"CurrentVersion"="1.7"

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7]
"JavaHome"="C:\\Program Files\\Java\\jre7"
"RuntimeLib"="C:\\Program Files\\Java\\jre7\\bin\\client\\jvm.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7.0_01]
"JavaHome"="C:\\Program Files\\Java\\jre7"
"RuntimeLib"="C:\\Program Files\\Java\\jre7\\bin\\client\\jvm.dll"

Sie müssen das oben Gesagte an Ihre eigenen Verzeichnisse und Versionen anpassen.

Wenn dies nicht hilft, gibt es immer noch JavaRa http://raproducts.org/wordpress/ .


Leider hat dies unter Windows Server 2016 bei uns nicht funktioniert. Wir erhalten weiterhin "das angegebene Modul konnte nicht gefunden werden"
Praxiteles

Es tut uns leid, das zu hören ... probieren Sie alle anderen Lösungen aus, suchen Sie nach der Fehlermeldung ... und wenn Sie eine Lösung finden, teilen Sie sie bitte hier mit oder erstellen Sie eine neue Frage. Allerdings ... "Das angegebene Modul wurde nicht gefunden" ist nicht die Fehlermeldung, die in der ursprünglichen Frage behandelt wurde.
Tilman Hausherr

6

Stellen Sie sicher, dass Sie alle Dateien java.exe, javaw.exe und javaws.exe von Ihrem System entfernen.

  • Wenn Sie einen Windows \ System32-Ordner mit einem x32-System (Win XP 32 Bit) haben

  • Wenn Sie ein x64-System haben (Win 7 64-Bit), tun Sie dasselbe auch im Ordner Windows \ SysWOW64


6

Löschen Sie diese 3 Dateien in Ihrem lokalen Verzeichnis unter Pfad C: \ ProgramData \ Oracle \ Java \ javapath

java.exe
javaw.exe
javaws.exe

Dies löste das Problem für mich :)


4

Es gibt 3 Standorte zu überprüfen

  1. Registrierung HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft \ Java Runtime Environment \ 1.8.0_xxx \ JavaHome
  2. Java-Systemsteuerung - Registerkarte Java - Ansicht - Pfad
  3. Umgebungsvariablen - Pfad ($ env: Pfad)

Alle 3 müssen ausgerichtet werden (wenn Sie mehrere Einträge haben, entfernen Sie einfach die falschen) - das ist alles


4

Unter Windows 10 hatte ich gerade das JDK installiert und diese Fehler beim Überprüfen der Version erhalten. Ich musste alle ausführbaren Dateien löschen , beginnend mit java(dh java.exe, javaw.exeund javaws.exe) aus C:\ProgramData\Oracle\Java\javapath. Führen Sie nach dem Löschen das JDK-Installationsprogramm erneut aus, starten Sie mein Terminalprogramm neu und es java -vfunktioniert.


Ich musste das tun, aber ich musste nichts neu installieren. Das Löschen der Exes hat das Problem
behoben

Das Gleiche gilt für das Löschen dieser EXE-Dateien.
Guymac

Es ist in Windows 8 nach dem Löschen dieser Dateien
behoben

1

Ich hätte dies als Kommentar markiert, aber ich kann mich nicht bei Tilman bedanken. Ich habe versucht, PDFsam (PDF Split and Merge) ohne Erfolg zum Laufen zu bringen.

Beim Start wird ein Fehler ausgegeben, der besagt, dass JRE 1.6.0 nicht gefunden werden konnte. Ich habe sowohl 32- als auch 64-Bit-Versionen und sie checken gut auf der Java-Website in ihren jeweiligen Browsern aus.

Versucht, wiederholt zu deinstallieren / neu zu installieren und neu zu starten sowie JavaRa zu verwenden. Kein Glück, immer noch kein Los.

Nachdem ich diesen Beitrag gelesen hatte, habe ich in der Registrierung nachgesehen und es gab keinen ... \ SOFTWARE \ JavaSoft \ -Schlüssel. Daher habe ich jeden mit den entsprechenden Zeichenfolgenwerten hinzugefügt, die auf meine x86-Version verweisen (PDFsam ist ein 32-Bit-Programm). Damit war das erste Problem behoben, aber bei amd64-Bibliotheken trat ein Fehler auf, der darauf hindeutete, dass der Computer die 64-Bit-Version ausführen wollte. Also habe ich die Pfade zur 64bit JRE geändert und PDFsam funktioniert jetzt.

Zu Ihrer Information: Ich bin hierher gekommen, indem ich nach Java-Registrierungsschlüsseln gesucht habe, nachdem ich javaw.exe nicht über die Eingabeaufforderung starten konnte (auch nachdem ich die erforderlichen Pfade zum Systempfad hinzugefügt habe). Die oben genannten Änderungen haben dies ebenfalls gelöst.


1

Ich habe diese Art von Fehler erhalten, als ich JDK 1.7 hatte und JAVA JDK 1.8 installiert und meine Variablen JAVA_HOME und PATH auf die Version JAVA 1.8 verwiesen habe. Beim Versuch, die Java-Version zu finden, wurde dieser Fehler angezeigt. Ich habe meinen Computer neu gestartet und es funktioniert. Es scheint, dass wir den Computer nach dem Ändern der Umgebungsvariablen neu starten müssen.


1

Ich hatte das gleiche:

Error opening registry key 'Software\JavaSoft\Java Runtime Environment

Das Löschen von Windows \ SysWOW64 hilft für Win7 nicht

In meinem Fall hat es geholfen, JDK8 offline zu installieren (vom Link )


0

Wenn ein Virenscanner (wie McAfee) ausgeführt wird, versuchen Sie Folgendes:

  1. Deaktivieren Sie den Virenscanner
  2. Java deinstallieren (über Systemsteuerung / Programme und Funktionen)
  3. Installieren Sie Java neu (von Java.com )
  4. Aktivieren Sie den Virenscanner erneut

0

Java deinstallieren (über Systemsteuerung / Programme und Funktionen)

Installieren Sie Java JRE 7 -> OFFLINE <- Konfigurieren Sie JAVA_HOME und Path = %JAVA_HOME%/bin;%PATH%


0

Ich habe Windows 7. Nach der Installation habe ich das gleiche Problem: PyCharm. Ich war mit PyCharm nicht zufrieden und entschied mich stattdessen für Eclipse. Zu diesem Zeitpunkt stellte ich fest, dass bei meinem JDK ein Fehler aufgetreten ist. Ich hatte Java.9.x. Also entschied ich mich, es zu deinstallieren und die neuere Version zu erhalten (zu meiner Zeit war es Java.11.x. Das gleiche Problem blieb bestehen. Ich befolgte die meisten der oben im Beitrag erwähnten Schritte wie: - Entfernen aller Java * .exe-Dateien, - Entfernen von Java-bezogenen Einträgen aus der Registrierung. - Bereinigen aller unnötigen Java-Ordner. Es hat jedoch nichts geholfen. Ich hatte immer noch etwas im System, das auf einen fehlerhaften Java-Pfadnamen verweist.

Was wirklich Abhilfe gebracht hat, ist Folgendes: - Deinstallierte die Version von JDK, die ich gerade hatte. - Die letzte JDK-Version, die ich vor dem Auftreten des Problems hatte, wurde neu installiert. - Deinstallieren Sie diese Version ordnungsgemäß. - Installieren Sie die neueste Version des SDK. ..

Das war's ... an diesem Punkt kehrte alles zum Normalzustand zurück ... Außer dass Java.11.xx den Systempfad nicht automatisch korrigierte, musste ich es manuell tun.


0

Ich habe mehrere Antworten von oben befolgt und mein Problem behoben.

Problem:

Javac war auf 13 von jdk, aber Java verwendete 1.8 von jre, so dass Java einen inkompatiblen Laufzeitfehler verursachte

Fix:

  1. Unter Systemsteuerung -> Programme: Ich habe 1.8 (mit dem Namen Java 8 Runtime) deinstalliert und den anderen NICHT berührt (mit dem Namen Java (TM) SE Development Kit 13).

  2. Gelöschte Dateien java.exe, javac.exe und javawc.exe aus: a. C: \ Windows \ system32 b. C: \ Windows \ SysWOW64 c. C: \ ProgramData \ Oracle \ Java \ javapath

  3. Die Umgebungsvariable JDK_HOME zeigte auf 13, aber JAVA_HOME zeigte auf 1.8, also zeigte ich auf JAVA_HOME, um auch 13 zu verwenden, das C: \ Programme \ Java \ jdk-13.0.1 war

  4. Sowohl in den Abschnitten Benutzervariablen als auch Systemvariablen gab es eine Pfadvariable. Für den Abschnitt im Abschnitt Benutzervariablen habe ich die Zeichenfolge% JDK_HOME% hinzugefügt, die automatisch in den physischen Pfad übersetzt wurde. Für die unter Systemvariablen habe ich den Pfad C: \ ProgramData \ Oracle \ Java \ javapath gelöscht und C: \ Programme \ Java \ jdk-13.0.1 \ bin hinzugefügt

Alles gut jetzt! Vielen Dank an alle, die geantwortet haben, du rockst!

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.