Lorsque j'essaie d'exécuter cordova cli sur OSX, j'obtiens une erreur
env: node\r: Aucun fichier ou dossier de ce type
J'ai obtenu la dernière version de cordova sur npm, donc je pense que c'est la version 3.0.7
Lorsque j'essaie d'exécuter cordova cli sur OSX, j'obtiens une erreur
env: node\r: Aucun fichier ou dossier de ce type
J'ai obtenu la dernière version de cordova sur npm, donc je pense que c'est la version 3.0.7
Solution:
$ brew install dos2unix
$ find /usr/local/lib/node_modules -name "*.js" | xargs sudo dos2unix
Détails:
Le problème pour OP était lié à Git, cependant je prends un moment pour mentionner la solution rapide pour la plupart des cas
Le problème surviendra si Node essaie d'exécuter un fichier .js
qui a des fins de ligne de style Windows. Le problème pourrait provenir de packages npm tiers qui ont des fichiers .js
de ce type.
Comme l'a mentionné @Leo, Dos2Unix est la réponse, voici la chaîne de commandes pour une situation d'exemple alors que j'essayais d'installer Slack-cli
> npm install -g slack-cli
> slackcli
env: node\r: No such file or directory
La solution ressemble à
> brew install dos2unix
> find /usr/local/lib/node_modules/slack-cli -name "*.js" | xargs sudo dos2unix
> slackcli --help
Voilà..
Le problème semble être que cordova est au format dos
une fois que je l'ai converti au format Unix, cela semble fonctionner. Je ne reçois pas l'erreur env: node\r: Aucun fichier ou dossier de ce type.
J'ai utilisé dos2unix pour effectuer le changement https://code.google.com/p/rudix/downloads/detail?name=dos2unix-5.3.3-0.pkg
Sur ma machine, le fichier cordova était en fait dans usr/local/lib/node_modules/cordova/bin/cordova
Sur mon Mac OS X.
Je suis tombé sur le même problème : Mes fichiers avaient leurs fins de lignes changées en CRLF (windows) au lieu de LS (unix).
Cela a rendu impossible à Cordova et Node de compiler le projet avec l'erreur :
env: node\r: Aucun fichier ou dossier de ce type
Le coupable était GIT qui était en AUTOCRLF je ne sais pas pourquoi. J'ai exécuté la commande suivante dans le terminal :
git config --global core.autocrlf input
Ensuite, j'ai dû supprimer le projet et le recloner depuis GIT et ça a fonctionné comme un charme.
Pour moi, le problème se trouve dans la bibliothèque gulp installée dans le fichier :
'/node_modules/gulp/bin/gulp.js'
Il y a un '\r' à la fin de la ligne '#!/usr/bin/env node'. Version :
"github:gulpjs/gulp#4.0"
Cela a été corrigé en définissant :
git config --global core.autocrlf input
Et en rechargeant le dépôt
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.