Impossible d'exécuter JAVA même si path est défini sur Windows 8 Enterprise-Cordova
J'ai fait un nouveau projet Ionic / Cordova et j'essaie de le construire sur Windows 8.1. J'ai installé JDK et JRE 7 ainsi que android sdk et ant et les ai ajoutés à mon chemin en utilisant les instructions suivantes.
Plate-forme Cordova ajouter Android ne fonctionne pas lors de la liste des cibles Android
Lorsque j'exécute ionic platform add android
ou cordova
j'obtiens toujours l'erreur suivante:
C:\Users\BogdanR\.cordova\lib\android\cordova\3.4.0\bin\node_modules\q\q.js:126
throw e;
^
Error: Failed to run 'java -version', make sure your java environment is set up
including JDK and JRE.
Your JAVA_HOME variable is C:\Program Files\Java\jdk1.7.0_51
Error: Command failed: 'java' is not recognized as an internal or external command,
operable program or batch file.
at C:\Users\BogdanR\.cordova\lib\android\cordova\3.4.0\bin\lib\check_reqs.js:62:22
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:743:16)
at Socket.<anonymous> (child_process.js:956:11)
at Socket.EventEmitter.emit (events.js:95:17)
at Pipe.close (net.js:466:12)
Error: cmd: Command failed with exit code 8
at ChildProcess.whenDone (C:\nodist\bin\node_modules\cordova\src\superspawn.js:112:23)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:743:16)
at Process.ChildProcess._handle.onexit (child_process.js:810:5)
Unable to add platform android. Please see console for more info.
J'ai essayé de modifier à la fois les variables système et les variables de CHEMIN d'accès utilisateur.
LA CHOSE ÉTRANGE est que je peux taper java -version
et cela fonctionne:
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
J'utilise nodist pour gérer npm si cela est pertinent.
5 answers
Après avoir rencontré le même problème, les étapes suivantes semblent l'avoir résolu:
-
PATH
doit contenir le dossier bin du chemin d'installation JavaC:\Program Files\Java\jdk1.8.0_05\bin
assurez-vous que lebin
est inclus -
JAVA_HOME
doit être défini à la racine de ce dossier d'installation Java, dans mon casC:\Program Files\Java\jdk1.8.0_05
Dans mon cas, j'avais plusieurs instalations java, et chaque fois que j'essayais d'imprimer la commande "echo %java_home%" sur l'invite de commande, elle renvoyait toujours "%java_home%" tel quel.
J'ai donc désinstallé toutes les versions java, puis l'ai réinstallé, et whoola, cela a fonctionné.
J'espère que cela aide quelqu'un.
Il y a une chose que vous pouvez essayer est de définir cette variable JAVA_HOME sur C:\Program Fichiers\Java \ jdk1.7. 0_51 \ bin
Puisque vous utilisez Windows, vous pouvez accéder au Panneau de configuration pour le mettre à jour.
Vous avez pu exécuter java -version
probablement parce qu'il est inclus dans le chemin de l'utilisateur.
Dans mon cas, Il a dit "la variable JAVA_HOME n'est pas valide, C:\Program Fichiers\Java\jdk1.7.0_51". Ensuite, j'ai ajouté un guillemet à JAVA_HOME. Tout comme "C:\Program Fichiers\Java\jdk1.7.0_51". Enfin, Il fonctionne. Que cela puisse être utile
Il y avait une mauvaise entrée dans le chemin qui a corrompu tout mon chemin système.
C:\Program Files\Microsoft SQL Server\110\Tools\Binn";C:\Program Files\Microsoft\Web Platform Installer\;
Il semble que ce guillemet soit une entrée ajoutée par l'installation de SQL Server ou la plate-forme Web. Je ne les ai jamais ajoutés au chemin, donc c'est peut-être la faute des installateurs?