138 votes

Erreur Java lors de l'ouverture d'une clé de registre

J'obtiens cette erreur lorsque j'essaie de faire quoi que ce soit avec Java dans l'invite de commande :

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

J'ai essayé de supprimer les répertoires Java et le registre il y a quelques jours. J'ai redémarré l'ordinateur et Java fonctionnait toujours bien, puis je l'ai redémarré à nouveau aujourd'hui et maintenant j'obtiens cette erreur. J'ai essayé de désinstaller et de réinstaller mais cela ne semble pas fonctionner. J'ai installé la dernière version de Java JRE et le chemin d'accès est défini dans les variables d'environnement. Quelqu'un a t-il une idée sur la façon de résoudre ce problème ?

0voto

zut Points 61

Si un antivirus (comme McAfee) est en cours d'exécution, essayez :

  1. Désactiver l'antivirus
  2. Désinstaller Java (via Panneau de configuration / Programmes et fonctionnalités)
  3. Réinstaller Java (à partir de Java.com )
  4. Réactiver l'antivirus

0voto

dapx Points 29

Désinstaller Java (via Panneau de configuration / Programmes et fonctionnalités)

Installer Java JRE 7 --> OFFLINE <-- Configurer JAVA_HOME et Path = %JAVA_HOME%/bin;%PATH%

0voto

Nowfal Points 1

J'ai Windows 7. J'ai eu le même problème après l'installation : PyCharm. Je n'étais pas satisfait de PyCharm, j'ai donc décidé d'utiliser Eclipse à la place. C'est à ce moment-là que j'ai découvert que mon JDK n'allait pas bien. J'avais Java.9.x. J'ai donc décidé de le désinstaller et d'obtenir la version la plus récente (à l'époque, il s'agissait de Java.11.x. Le même problème a persisté. J'ai suivi la plupart des étapes mentionnées dans l'article, comme la suppression de tous les fichiers java*.ex : - Suppression de tous les fichiers java*.exe, - suppression des entrées liées à Java dans le registre. - Nettoyage de tous les dossiers Java inutiles. Mais rien n'y a fait. J'avais toujours quelque chose dans le système qui se référait à un nom de chemin Java cassé.

Ce qui a vraiment apporté un remède est ce qui suit : - Désinstallation de la version du JDK que j'avais à ce moment-là. - Réinstallation de la dernière version du JDK que j'avais avant que le problème ne survienne. - Désinstaller correctement cette version. - Installer la dernière version du SDK. ..

C'est tout... à ce moment-là, tout est revenu à la normale... Sauf que Java.11.xx n'a pas corrigé le chemin système automatiquement, j'ai dû le faire manuellement.

0voto

Shree Harsha Points 156

J'ai suivi les multiples réponses ci-dessus et j'ai résolu mon problème.

Enjeu :

Javac utilisait la version 13 du jdk mais java utilisait la version 1.8 du jre, ce qui a provoqué une erreur d'incompatibilité de la durée d'exécution.

Fixer :

  1. Sous Panneau de configuration -> Programmes : J'ai désinstallé la version 1.8 (nommée Java 8 runtime) et je n'ai pas touché à l'autre version (nommée Java (TM) SE Development Kit 13).

  2. Suppression des fichiers java.exe, javac.exe et javawc.exe de : a. C:\Windows\system32 b. C:\Windows\SysWOW64 c. C:\ProgramData\Oracle\Java\javapath

  3. La variable d'environnement JDK_HOME pointait vers la 13 mais JAVA_HOME pointait vers la 1.8. J'ai donc demandé à JAVA_HOME d'utiliser également la 13, ce qui a été fait. C:\Program Dossiers \Java\jdk -13.0.1

  4. Il y avait une variable Path dans les sections Variables utilisateur et Variables système. Pour celle de la section des variables utilisateur, j'ai ajouté la chaîne %JDK_HOME% - qui s'est traduite automatiquement par le chemin physique. Pour la variable système, j'ai supprimé le chemin d'accès. C:\ProgramData\Oracle\Java\javapath et a ajouté C:\Program Dossiers \Java\jdk -13.0.1 \bin

Tout va bien maintenant ! Merci à tous ceux qui ont répondu, vous êtes géniaux !

0voto

Ramesh Bathini Points 31

Veillez à supprimer les références java de system32, SysWOW64, et à supprimer javapath de ProgramData. \Oracle\Java. Il résout le problème

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X