J'ai installé l'outil babel-cli comme expliqué dans la page Babel 'Getting Started' .
Depuis un terminal dans mon dossier de projet:
npm install --save-dev babel-cli
Après cela, il existe un répertoire node_modules avec un dossier babel-cli, mais aucun package.json n'est créé. npm affiche également l'erreur suivante:
npm WARN enoent ENOENT: no such file or directory, open '/Users/MyName/Sites/Tutorials/Babel2/package.json
Quand j'essaie de courir Babel, je comprends ceci:
babel src -d lib
-bash: babel: command not found
J'ai la dernière version de nodejs/npm installée. J'ai exécuté npm update -g et modifié mon fichier .bash_profile pour inclure:
export PATH=$PATH:/Users/MyName/npm/bin
export PATH=/usr/local/share/npm/bin:$PATH
Je n'ai pas expérimenté cela avec d'autres outils npm tels que browserify. Pourquoi Babel n'est-il pas reconnu?
Ici, nous avons deux problèmes. Tout d’abord, vous avez besoin d’un fichier package.json
. Dire à npm que l'installation en est une sans provoquer l'erreur npm WARN enoent ENOENT: no such file or directory
. Dans votre répertoire de projet, exécutez npm init
pour générer un fichier package.json
pour le projet.
Deuxièmement, les fichiers binaires locaux ne sont probablement pas trouvés car le ./node_modules/.bin
local ne se trouve pas dans $PATH
. Il y a quelques solutions dans Comment utiliser le paquet installé localement dans node_modules? , mais il serait peut-être plus facile d’envelopper vos commandes babel-cli dans des scripts npm. Cela fonctionne car npm run
ajoute la sortie de npm bin
(node_modules/.bin
) à la variable PATH
fournie aux scripts.
Voici un exemple simplifié package.json
qui renvoie la version de babel-cli installée localement:
{
"scripts": {
"babel-version": "babel --version"
},
"devDependencies": {
"babel-cli": "^6.6.5"
}
}
Appelez le script avec cette commande: npm run babel-version
.
Mettre des scripts dans package.json est très utile mais souvent négligé. Beaucoup plus dans la documentation: Comment npm gère le champ "scripts"
Quand j'ai trouvé cette question, je cherchais
$ npm install -g babel-cli
Il s’agit d’un problème courant. Il cherche le fichier .cmd
à partir du répertoire racine où vous avez installé babel-cli
. Essayez la commande ci-dessous.
./node_modules/.bin/babel.cmd
Une fois que vous êtes capable de voir votre code source dans l'invite de commande. Votre prochaine étape consiste à installer un autre module npm babel-preset-es2015
.
Suivez la réponse ci-dessous pour installer babel-preset-es2015
et voir pourquoi babel en a besoin.
C'est ce que j'ai fait pour ajouter automatiquement mon chemin node_modules/.bin
du projet local à PATH
. Dans ~/.profile
j'ai ajouté:
if [ -d "$PWD/node_modules/.bin" ]; then
PATH="$PWD/node_modules/.bin"
fi
Rechargez ensuite votre profil bash: source ~/.profile
J'ai eu le même problème. Supprimez le dossier nodemodules
et ouvrez l'invite de commande en tant qu'administrateur, puis exécutez npm install
.
Tous les paquets installés bien.
Vous devrez ajouter des guillemets autour du chemin d'accès à votre fichier babel comme indiqué ci-dessous.
"./node_modules/.bin/babel" --help
Travaillé pour moi par exemple.
./node_modules/.bin/babel --version
./node_modules/.bin/babel src/main.js
Pour installer la version 7+ de Babel, exécutez:
npm install -g @babel/cli
npm install -g @babel/core
J'ai rencontré le même problème, j'ai vraiment essayé tout ce à quoi je pouvais penser. N'étant pas fan d'installer quoi que ce soit à l'échelle mondiale, mais finalement devoir exécuter npm install -g babel-cli
, Ce qui a résolu mon problème ... peut-être pas la solution, mais certainement une solution possible ...
Pour ceux qui utilisent Yarn en tant que gestionnaire de paquets au lieu de npm:
yarn global add babel-cli
En fait, si vous voulez utiliser les commandes cmd, vous avez deux méthodes . Commencez par l'installer dans un environnement global . L'autre méthode est npm link
. Donc, essayez la première: npm install -g babel-cli
.