En courant
sencha app build production
Je reçois l'erreur suivante:
Erreur: clé de registre 'Software \ JavaSoft \ Java Runtime Environment' \ CurrentVersion '
a la valeur «1,8», mais «1,7» est requis. Erreur: impossible de trouver java.dll Erreur: impossible de trouver l'environnement d'exécution Java SE.
java -version
, la commande montre ce qui suit:
java version "1.8.0_40" Java (TM) SE Runtime Environment (build 1.8.0_40-b26) Java HotSpot (TM) 64 bits Server VM (build 25.40-b25, mode mixte)
Impossible de trouver où le chemin va mal. Une idée?
----------------------- ÉDITER -------------------------- ----------------------
Remarque : j'utilise Windows 7 (64 bits).
J'ai essayé de désinstaller le cmd sencha touch et de le réinstaller. Mais toujours la même erreur.
J'ai désinstallé toutes les instances de la version java et réinstallé la dernière, toujours le problème persiste.
la source
System32
résoudra le problème.Dans mon cas (Windows 7 64 bits), je viens de faire ce qui suit:
Ensuite, j'ai fermé toutes les consoles de ligne de commande ouvertes, les ai rouvertes et j'ai exécuté java -version .
la source
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment]
CurrentVersion
de "1,8" à "1,7"la source
re: utilisateurs Windows
Non. Ne supprimez pas la référence d'environnement Javapath de votre variable PATH.
La raison pour laquelle le registre n'a pas fonctionné est que le script Oracle Javapath doit s'exécuter dans la séquence PATH avant les répertoires JRE et JDK - il triera la version actuelle:
placez ce répertoire en tête de votre
%PATH%
variable:[ou où que ce soit sur votre bureau]
donc votre PATH ressemblera à quelque chose comme ceci - le mien par exemple
Vous verrez alors la version actuelle correcte:
la source
Mon expérience:
J'utilise Windows 8.1 et j'ai rétrogradé la version JAVA de 1.8 à 1.7 et j'obtenais la même erreur.
Erreur: la clé de registre 'Software \ JavaSoft \ Ja a la valeur' 1.7 ', mais' 1.8 'est requis.
J'ai supprimé java.exe , javaw.exe et javaws.ex e du dossier C: \ Windows \ System32 et cela a fonctionné pour moi.
la source
J'ai eu le même problème. Une solution simple qui a fonctionné pour moi est de réorganiser les entrées dans le
PATH
pourJRE/JDK
. Ce problème a commencé à apparaître après l'installationJRE 8
dont l'installation a mis certains fichiers exécutables dans desSystem32 or SysWOW64
répertoires, ces fichiers exécutables sont en train de gâcher. Pour résoudre le problème:Créez une variable d'environnement pointant vers JDK home en tant que
JAVA_HOME
.set JAVA_HOME=C:\Progra~1\Java\jdk1.8.0_45
Mettez l'entrée
%JAVA_HOME%\bin
au début dans votre variable d'environnement PATH. Ajout de la valeur existante dePATH
. Par exemple:path=C:\Program Files\Java\jdk1.8.0_45\bin;%path%
la source
Je n'ai supprimé aucun des fichiers java.exe, mais j'ai changé l'ordre de mon système - variable "chemin" - afin qu'il reflète% JAVA_HOME% \ bin comme première entrée. Cela a fait l'affaire.
la source
L'erreur est explicite ...
... vous essayez d'utiliser l'
java.exe
exécutable 1.7 alors que la clé de registreHKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment
>CurrentVersion
a la valeur 1.8.Le thème récurrent des solutions proposées est que l'erreur est une erreur de configuration . L'erreur peut être résolue de différentes manières (par exemple la reconfiguration de l'environnement des utilisateurs ou la suppression des exécutables java avec les doigts croisés et l'espoir qu'il existe un autre repli
java.exe
dans les utilisateurs%PATH%
et que le replijava.exe
est l'exécutable correct).La bonne solution dépend de ce que vous essayez de réaliser: "essayez-vous de passer de jdk-8 à jdk-7? Essayez de passer à jdk-8? ..."
Étapes de reproduction
mettre à jour la
%PATH%
variable d'environnement utilisateurs , supprimerC:\Program Files (x86)\Common Files\Oracle\Java\javapath
dans une nouvelle invite de commande
java -version
Solutions)
La solution d'OP https://stackoverflow.com/a/29769311/1423507 est une approche " croisée des doigts et espérons qu'il existe un repli
java.exe
chez les utilisateurs%PATH%
et que l'exécutable de secours est correct" pour résoudre l'erreur. Compte tenu des étapes de reproduction, la suppression dejava.exe
,javaw.exe
et desjavaws.exe
exécutables deC:\Windows\System32
(uniquement dans mon cas) entraînera le fait de ne plus avoir dejava.exe
présent dans les utilisateurs,%PATH%
ce qui entraînera l'erreur'java' is not recognized as an internal or external command, operable program or batch file.
qui n'est pas vraiment une solution.Les réponses https://stackoverflow.com/a/35775493/1423507 et https://stackoverflow.com/a/36516620/1423507 fonctionnent mais vous revenez à l'utilisation de la version
java.exe
1.7 (par exemple, mettez à jour laCurrentVersion
valeur de la clé de registre pour qu'elle corresponde à lajava.exe
version trouvée dans les utilisateurs%PATH%
).assurez-vous que
java.exe
1.8 est le premier trouvé dans les utilisateurs%PATH%
(la façon dont vous faites cela n'a pas d'importance), c'est-à-dire:%PATH%
pour qu'ils incluent d'C:\Program Files (x86)\Common Files\Oracle\Java\javapath
abord (assurez-vous que les exécutables de ce répertoire sont corrects)%PATH%
pour inclure d'abord le chemin absolu de vos binaires java (set PATH="C:\Program Files\Java\jre1.8.0_191\bin;%PATH%"
)%PATH%
avec eux (set JAVA_HOME="C:\Program Files\Java"
;set JRE_HOME=%JAVA_HOME%\jre1.8.0_191
;set PATH=%JRE_HOME%\bin;%PATH%
)la source
J'ai eu cette erreur sur certains services Windows exécutant Java. En fin de compte, sur ma machine, j'ai essayé de désinstaller les autres versions de java.
Je n'ai laissé que 1,8 et maintenant tout fonctionne.
la source
aribeiro answer a fonctionné pour moi - avec des changements mineurs
la source
Quant à moi sur win7 64bit.
Copiez le java.exe javaw.exe javaws.exe dans le dossier
C:\Program Files\Java\jre1.8.0_91\bin to the C:\Windows\System32.
puis ouvrez cmd, tapez java -version.
Avant ce qui précède, assurez-vous que la version actuelle du registre est 1.8
Dans le menu START, tapez "regedit" pour ouvrir l'éditeur de registre
la source
Ma solution à ce problème est venue après avoir lu et essayé tout ce qui précède.
Dans mon cas, j'ai essayé de rétrograder Java pour utiliser des impressions au format
Apache ActiveMQ
. Après avoir désinstallé toutes les versions de Java et nettoyé le registre, j'obtenais la même erreurDans mon cas , je devais aller à des variables d'environnement, le chemin d'édition, ouvre l'emplacement de javapath (
C:\ProgramData\Oracle\Java\javapath
) et il était - trois fichiers (java.exe
,javaw.exe
,javaws.exe
) qui restaient de la version JRE8.Après avoir établi ce fait, je les ai simplement échangés avec les mêmes fichiers du
C:\Windows\SysWOW64
répertoire (ceux-ci provenaient de laJRE7
version) et tout a parfaitement fonctionné.la source
Après la dernière mise à jour automatique de Java, je n'ai pas pu exécuter Java à partir de l'invite de commande.
Ma variable de chemin avait 'C: \ ProgramData \ Oracle \ Java \ javapath;'
Je n'ai pas pu accéder à 'C: \ ProgramData \ Oracle \ Java \ javapath;' à partir de la fenêtre d'invite de commande, car il n'existait pas.
J'ai supprimé C: \ ProgramData \ Oracle \ Java \ javapath; ' à partir de la variable de chemin et l'a remplacé par 'C: \ Program Files \ Java \ jre1.8.0_141 \ bin;'
la source
Vous devez définir votre dossier jdk dans la variable JAVA_HOME, ajoutez% JAVA_HOME% à votre chemin de variable
Supprimez ou modifiez le nom de votre java.exe, javaw.exe et javaws dans votre dossier system32
exécutez cmd.exe, java -version prend maintenant la nouvelle version que vous définissez dans JAVA_HOME.
la source
En plus de la réponse d'Anand Gupta, assurez-vous qu'aucun autre java à l'exception de celui dont vous avez besoin n'est utilisé. Exécutez
which java
(where java
pour Windows) et voyez quels exécutables java sont utilisés. Supprimez simplement ceux que vous ne souhaitez pas utiliser et si celui dont vous avez besoin n'est pas présent, ajoutez-le à PATH.la source
Tout d'abord, vous devriez avoir Java 7. Si vous ne l'avez pas, installez-le d'abord (je ne sais pas ce que vous utilisez, Linux, Mac, yum, apt, homebrew, vous devriez le découvrir vous-même.)
Si vous disposez déjà de Java 7, exécutez:
Devrait être quelque chose comme sortie ceci:
/usr/lib/jvm/java-8-oracle
. Près de ce répertoire, vous devriez voir lejava-7
répertoire. Après l'avoir trouvé, exécutezChangez
{java-7-dir}
avec votre chemin de répertoire. Ensuite, vous pouvez exécuter votre commande.Ce n'est qu'une solution temporaire. Pour le changer définitivement, mettez la commande ci-dessus dans votre
~/.bashrc
fichier.EDIT: Si vous utilisez Windows , remplacez la variable d'environnement de
JAVA_HOME
par le chemin du répertoire d'installation de Java 7.la source
Ma courte contribution, pour partager le même problème avec la version 64 bits de Talend Open Studio.
Pour résoudre ce problème, supprimez tous les fichiers java.exe, javaw.exe et javaws.exe sur c: \ ProgramData \ Oracle \ Java \ javapath \
et TOS démarre correctement avec la version 64 bits!
la source
Supprimez-le du chemin système:
Et cela résoudra le problème lors de la mise à niveau de la version java de 1.7 à 1.8
la source
Il existe quelque part un autre java.exe de la version jre 1.8 qu'il est dans "chemin", vous devriez le trouver et le supprimer si c'est possible. il peut être dans les données temporaires de l'utilisateur pour les applications qui nécessitent jre.
la source
Veuillez modifier les variables système JAVA_BIN et JAVA_HOME, puis redémarrer le système ou peut-être vous reconnecter. Vous rencontrez cette erreur car il s'agit toujours du chemin jdk1.7. Sur Windows, c'est comme ça:
la source
Installez simplement Java SE Runtime Environment JRE 7!
Vous voyez maintenant "java 7" et "java 8" dans "Programmes et fonctionnalités" dans le "Panneau de configuration"
Cela a fonctionné pour moi.
la source
Une solution possible à ce problème consiste à ajouter au dossier Sencha CMD un fichier chauve-souris comme suggéré à ce fil Sencha Cmd 5 + Java 8 Error .
Le lot portera le nom "sencha.bat" avec ce code:
Placez-le dans le dossier sencha, dans mon cas est
L'étape suivante consiste à modifier la variable d'environnement PATHEXT. Modifiez les variables utilisateur pour avoir le moins d'impact possible.
Je change de
à
L'idée est de faire exécuter les fichiers .bat par Windows avant les fichiers .exe. Ceci est important car le dossier sencha contient déjà un fichier "sencha.exe". Et dans la ligne de commande, si vous tapez «sencha», il exécutera «sencha.exe» au lieu de «sencha.bat».
C'était la seule solution qui fonctionnait car je suis très limité en matière d'autorisations.
la source
Mon système: - Windows 8.1
Environnements Java
J'ai récemment installé Oracle 11g XE et j'ai reçu le message d'erreur mentionné lors de l'accès à la commande "java" à l'invite de commande.
J'ai vérifié mes variables d'environnement, vérifié la séquence (comme mentionné dans les réponses précédentes) et détecté que ma variable système PATH avait l'entrée suivante comme première entrée:
C: \ OracleDatabase \ oraclexe \ app \ oracle \ product \ 11.2.0 \ server \ bin ;
J'ai changé la séquence et défini le chemin JDK comme première entrée:
J'ai répliqué le même changement dans la variable utilisateur: chemin
Après avoir terminé l'activité ci-dessus, j'ai redémarré l'invite de commande et exécuté la commande java -version et le problème avait disparu. Il affichait Java 8 comme version actuelle.
la source
J'ai eu le même problème. Le déplacement du chemin JDK et JRE en haut de la variable de chemin a résolu le problème (qui a la priorité sur ce qui est présent sous System32)
Par exemple, voici le mien:
la source
Désinstallez Java 8 de votre liste de programmes. EN suivant les étapes ci-dessous: -
Depuis votre bureau, cliquez sur le menu Démarrer (ou Démarrer la balle) en bas à gauche de votre écran. Accédez au panneau de configuration. Cliquez sur Programmes et fonctionnalités. Sélectionnez Java8 et cliquez sur Désinstaller
la source
Tuez toutes les applications liées à java dans le gestionnaire de tâches, puis supprimez Java.exe, Javaw.exe et Jawaws.exe de C: \ windows \ System32
Cela devrait résoudre votre problème... :)
la source
vient de faire ça et ça a marché
HKLM> LOGICIEL> JavaSoft> Environnement d'exécution Java
il suffit de changer manuellement la version actuelle en 1.7.
lol ... mais ça a marché!
la source