web-dev-qa-db-de.com

Fehler beim Überprüfen der Java-Version: Java.dll konnte nicht gefunden werden

Warum bekomme ich das? Wie kann ich es reparieren?

C:\Users\ash>Java version
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'
has value '1.7.0_01', but '1.7' is required.
Error: could not find Java.dll
Error: Could not find Java SE Runtime Environment.
24
itro

Installieren Sie das JDK erneut und setzen Sie die Systemvariable Java_HOME in Ihrem JDK. (z. B. C:\tools\jdk7)
.__ Fügen Sie Ihrer PATH-Systemvariablen die Java_HOME-Variable hinzu

Geben Sie die Befehlszeile ein 

echo %Java_HOME%

und 

Java -version

So überprüfen Sie, ob Ihre Installation erfolgreich abgeschlossen wurde.

12
Ilya

Die akzeptierte Lösung für die Neuinstallation aller JDKs war etwas hart .. Ich hatte auch dieses Problem und hier sind meine 2 Cent:

Dieses Problem trat auf, seit ich JDK 8 installiert hatte und noch JDK 6 installiert hatte. Ich brauche für verschiedene Projekte, an denen ich arbeite.

Ich bemerkte, dass ich sowohl einen Benutzer als auch ein System %Java_HOME% hatte. Daher entfernte ich meine User %Java_HOME%-Variable und ließ nur das System übrig.

Ich habe auch bemerkt, dass es in meiner Oracle-Installation einige ausführbare Java-Dateien gab, und ich glaube, diejenigen, bei denen Konflikte bestehen, da sowohl meine Oracle- als auch meine Java-Installationen in meiner %PATH%-Variablen waren.

Ich habe alle Java-Pfade aus meiner %PATH%-Variable entfernt und das %Java_HOME%\bin nur am Anfang der Variablen gelassen, um Konflikte mit der Oracle-Installation zu vermeiden.

34
ffleandro

Ich hatte nach der Installation von Java 1.8 ein ähnliches Problem. 

Um dies zu beheben, gehen Sie zu Advance System setting -> path und entfernen Sie diese 

C:\ProgramData\Oracle\Java\javapath;

26
Rohit Jain

Entfernen 

C:\ProgramData\Oracle\Java\javapath;

arbeit wie Charme

9
blazehub

Ich musste den Common Files-Javapath aus dem 'Path' entfernen, der in Konflikt stand, damit er funktioniert. Zum Glück funktioniert die Java-Version einwandfrei.

C:\Program Files (x86)\Common Files\Oracle\Java\javapath
5
zagoo2000

Dieses Problem tritt in der Regel in Windows auf, wenn der Registrierungseintrag "Java Runtime Environment" fehlt oder mit dem installierten JDK nicht übereinstimmt. Die Nichtübereinstimmung kann auf mehrere JDKs zurückzuführen sein.

Zu lösende Schritte:

  1. Öffnen Sie das Run-Fenster:

    Drücken Sie windows+R

  2. Registrierungsfenster öffnen:

    Tippe "regedit" und gib ein.

  3. Wechseln Sie zu:\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft \

  4. Wenn Java Runtime Environment in JavaSoft nicht vorhanden ist, erstellen Sie einen neuen Schlüssel und geben Sie den Namen Java Runtime Environment ein.

  5. Erstellen Sie für Java Runtime Environment den String-Schlüssel "CurrenVersion" und geben Sie die entsprechende Version als Wert an:

    JRE regedit entry

  6. Erstellen Sie einen neuen Unterschlüssel von 1.8.

  7. Erstellen Sie für 1.8 einen Zeichenfolgenschlüssel mit dem Namen JavaHome mit dem Wert JRE home:

    JRE regedit entry 2

Ref: https://mybindirectory.blogspot.com/2019/05/error-could-not-find-javadll.html

3
Shivam

Problem: Wir hatten das gleiche Problem auf unserem Windows 2012-Server. Wir haben die Umgebungsvariable Java_HOME verwendet, und im PATH haben wir folgende Einstellungen verwendet: ...% Java_HOME%/bin; ... Im PATH waren keine anderen Java-bezogenen Einstellungen enthalten.

Das Problem war, dass wir am Ende des Werts der Java_HOME-Variablen ein Leerzeichen hatten. Wie "C:\Programme\Java\Jdk 1.8.0_172" bedeutet "% Java_HOME%/bin" "C:\Programme\Java\Jdk 1.8.0_172\bin". Der Wert wurde also nach Leerzeichen aufgeteilt und das System versuchte, Java.exe unter 'C:\Programme\Java\Jdk 1.8.0_172' zu finden, wo es offensichtlich nicht der Fall ist.

Lösung war: Lösche das Leerzeichen am Ende des Java_HOME-Wertes! 

1
Csaba Tenkes

Sie könnten eine 32-Bit-Version von Java in einer 64-Bit-Umgebung verwenden. Exportieren Sie die Registrierungsstruktur HKLM\Software\JavaSoft und importieren Sie sie in HKLM\Software\Wow6432Node\JavaSoft. Für 1.6 brauchte ich nur JavaHome- und RuntimeLib-Werte.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Javasoft]

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Javasoft\Java Runtime Environment]
"CurrentVersion"="1.6"

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Javasoft\Java Runtime Environment\1.6]
"JavaHome"="C:\\Java\\jre"
"RuntimeLib"="C:\\Java\\jre\\bin\\client\\jvm.dll"
1
Paul Simpson

Ich hatte nach der Installation von Java 10.0 ein ähnliches Problem

Um dies zu beheben, gehen Sie zu Advance System setting -> path und entfernen Sie diese

C:\ProgramData\Oracle\Java\javapath;

1
Néêrãj

Stellen Sie sicher, dass Ihre Variable JDK Path in den Ordner \bin verweist und sich oben in der Liste befindet.

Wenn es einen anderen Eintrag mit einer Datei namens Java (z. B. C:\ProgramData\Oracle\Java\javapath) gibt, wird der Befehl für diese Datei anstelle der Java-Datei in Ihrem JDK ausgeführt. Es ist nicht erforderlich, das gesamte JDK neu zu installieren, es sei denn, Ihre Dateien sind aus irgendeinem Grund beschädigt oder beschädigt.

1
DFSFOT

Ich habe meinen Pfad geändert, um das Oracle-JDK an den Anfang des Pfads zu setzen, und das hat es behoben.

1
Juan T

Ich habe die "C:\Programme (x86)\Heroku\bin" aus der PATH-Variablen entfernt und das Problem ist weg. Ich denke es ist wahrscheinlich das Heroku eine andere Version von Java benötigt. Überprüfen Sie also alle Verzeichnisse in Ihrer PATH-Variablen und entfernen Sie die möglichen Verzeichnisse.

0
HappyLiang

Wenn Sie diesen Fehler in cmd mit einem anderen Fehler sehen, als "Laufzeitumgebung konnte nicht gefunden werden", nachdem Sie alle Einstellungen in Umgebungsvariable vorgenommen haben. Dann müssen Sie nur jre.exe in Ihrem jdk-Ordner ausführen, es erneut installieren und dann mit Java - version command erneut prüfen. Ich hoffe es wird dir helfen. 

0
Mitish_13
  1. Deinstallieren Sie Java von der Maschine
  2. Überprüfen Sie, ob der Java-Ordner aus den Programmdateien gelöscht wurde
  3. Check Registry hat keine Instanz von Java
  4. Öffnen Sie die Systemvariablen und löschen Sie den EINZIGEN Java-Pfad von PATH
  5. Installieren Sie jetzt die neue Version erneut.
  6. Legen Sie den Pfad in Systemvariablen fest.

Dieser Prozess bereinigt alle Spuren von Java und installiert dann frisches Java.

Hinweis: Dieses Problem tritt auf, wenn mehrere Installationen und Deinstallationen durchgeführt werden.

0
Dhruv Bilakhia
  1. umbenennen der Datei "C:\Windows\System32\Java.exe" to "C:\Windows\System32\Java_old.exe"
  2. CMD -> Java -version

erledigt.

0
user10783928

In meinem Fall war die Regedit-Information korrekt und das Problem wurde folgendermaßen gelöst:

1) Java_HOME auf jdk setzen - Java_HOME = C:\Programme\Java \\ bin setzen 2) PATH auf jre setzen - PATH = "C:\Programme\Java \\ bin" setzen

0
tutekthetut