JAVA_HOME est mal défini - Hadoop sous Windows 10 [duplicate]
Contexte: j'essaye d'installer Hadoop sur ma machine Windows 10. J'ai suivi les instructions ici et j'ai beaucoup de difficulté à terminer le processus. Je continue de soulever l'erreur suivante:
Le système ne peut pas trouver le chemin spécifié. Erreur: JAVA_HOME n'est pas correctement défini. Veuillez mettre à jour C: \ Users \ eric \ Downloads \ hadoop-3.1.4.tar \ hadoop-3.1.4 \ hadoop-3.1.4 \ etc \ hadoop \ hadoop-env.cmd'-Dhadoop.security.logger 'n'est pas reconnu comme commande interne ou externe, programme exploitable ou fichier batch.
Lorsque je vérifie la version de Java, j'obtiens ce qui suit, donc je sais avec certitude que Java a été installé.
C:\Java\bin>java -version
java version "1.8.0_261"
Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)
Je déduis de l'erreur ci-dessus qu'il y a un problème avec le chemin dans la variable d'environnement que j'ai définie pour JAVA_HOME. Je ne sais vraiment pas pourquoi l'erreur fait référence à ce répertoire dans le message, car lorsque je suis echo %JAVA_HOME%au terminal, j'obtiens C:\Java\binle chemin de la variable d'environnement (comme recommandé ici ).
Question: Je suppose que le fichier jdk ne peut pas être trouvé / est perdu ou autre chose. Comment résoudre ces problèmes? Et où puis-je trouver ce fichier JDK (le jdkl.8.0_241fichier affiché à 11: 55 dans la vidéo) car il ne semble pas se trouver dans le dossier bin du téléchargement JDK? Veuillez aider. Cette question n'est PAS un doublon, car le problème semble être plus étroitement lié au fichier JDK.
Réponses
JAVA_HOME doit pointer vers le répertoire racine d'un JDK Java et doit être spécifié dans la variable d'environnement s. Après avoir défini cette valeur, un redémarrage du terminal / application / console / IDE / invite de commande est nécessaire pour rendre la nouvelle valeur active.
Si vous donnez simplement: java --versionil utilise la première version java.exe trouvée sur votre PATH . JAVA_HOME et la version java PATH n'ont aucune relation entre eux.
JAVA_HOME peut être spécifié par exemple sur: "c: / java / jdk9" et votre chemin comprend "c: / java / jdk8 / bin". Dans cette situation java --versionvous donnera 1.8.x.x.
JAVA_HOME est utilisé par les processus qui se connectent à une nouvelle sous-procédure, puis utilisent cette valeur JAVA_HOME .
Dans votre situation, il n'y a probablement qu'un espaceur manquant dans / après l'appel à hadoop-env.cmd ?? (pas clair avec les informations actuelles)