J’apprends à faire une application hybride avec Cordova Apache (précédemment Phonegap?) Je suis les étapes recommandées par notre site Web:
https://cordova.apache.org/docs/en/latest/guide/cli/index.html
J’ai installé avec succès nodeJS (si je fais la commande node –version, elle retournera sa version)
Mais lorsque j’essaie d’installer Cordova, tout semble fonctionner, mais pas l’interface de ligne de commande.
Donc: je suppose que la CLI est configurée de manière incorrecte, mais je ne suis pas sûr. Quelqu’un peut m’aider ici?
Commande utilisée pour installer cordova (globalement):
npm install -g cordova
Commande utilisée pour vérifier si elle était correctement installée et accessible depuis la ligne de commande (avec les erreurs données):
cordova --version module.js:340 throw err; ^ Error: Cannot find module 'c:\Program Files\nodejs\node_modules\cordova\bin\cordova' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:289:25) at Function.Module.runMain (module.js:457:10) at startup (node.js:138:18) at node.js:974:3
J’ai découvert que le chemin dans l’erreur n’existe pas:
c:\Program Files\nodejs\node_modules\cordova\bin\cordova
Le chemin correct doit être:
C:\Users\Username\AppData\Roaming\npm\node_modules\cordova\bin\cordova
J’ai configuré ce chemin dans mes environnements système globaux:
C:\Users\Username\AppData\Roaming\npm
J’ai remarqué ce fichier (qui doit être appelé à partir de la CLI, je suppose)
#!/bin/sh basedir=`dirname "$0"` case `uname` in *CYGWIN*) basedir=`cygpath -w "$basedir"`;; esac if [ -x "$basedir/node" ]; then "$basedir/node" "$basedir/node_modules/cordova/bin/cordova" "$@" ret=$? else node "$basedir/node_modules/cordova/bin/cordova" "$@" ret=$? fi exit $ret
Je travaille sur Windows 8
J’ai fait face au même problème récemment. Résolu en procédant comme suit:
npm -g install npm
npm install -g cordova
Le problème était que la version de npm fournie avec la dernière version stable de node ne prend pas en charge certains packages.
Dans Windows dans le dossier racine du projet, j’ai trouvé deux fichiers cordova.cmd et Cordova. Supprimer ces deux fichiers