Accueil·Messages d’erreur

npm · npm

Le message

npm ERR! enoent ENOENT: no such file or directory, open '/home/me/package.json'

Ce que cela veut dire

npm a cherché package.json dans le répertoire courant puis en remontant et n'en a trouvé aucun : vous avez lancé une commande npm à un endroit qui n'est pas un projet. Cela arrive quand vous êtes à la racine d'un monorepo alors que le projet est dans un sous-dossier, quand vous êtes à côté du dossier cloné, ou quand vous avez simplement oublié le cd. La réponse est de vous déplacer dans le dossier qui contient package.json, et un ls est le plus rapide pour le voir. N'utilisez npm init -y que si vous voulez réellement démarrer un nouveau projet ici : dans le mauvais dossier, il laisse un package.json orphelin qui embrouillera l'outillage plus tard.

Le correctif

npm init -y
Émis par
npm
npm
20

Avec npm, la cause tient dans la première ligne code XXXX et non dans les six dernières lignes npm ERR!, et quand la panne vient de l'arbre de dépendances ou d'une compilation native plutôt que de votre code, supprimer node_modules puis réinstaller en règle environ la moitié.

Lire un message d’erreur

  • Lisez à partir de la première ligne. Plus on descend, plus il s’agit des entrailles de l’outil ; la cause est généralement en haut.
  • S’il y a un fichier et un numéro de ligne, commencez là — pas la première image de la pile, mais la ligne la plus haute qui nomme un fichier de vous.
  • Cherchez le message tel quel, mais retirez d’abord vos chemins et vos noms de variables : c’est cela qui empêche la correspondance.
  • La même situation se formule autrement selon la version de l’outil. Si les résultats sonnent faux, ajoutez le numéro de version.
  • Avant de coller un correctif, vérifiez ce qu’il jette. Certains sont irréversibles.

Questions fréquentes

Q. Que veut dire « npm ERR! enoent ENOENT: no such file or directory, open '/home/me/package.json' » ?

npm a cherché package.json dans le répertoire courant puis en remontant et n'en a trouvé aucun : vous avez lancé une commande npm à un endroit qui n'est pas un projet. Cela arrive quand vous êtes à la racine d'un monorepo alors que le projet est dans un sous-dossier, quand vous êtes à côté du dossier cloné, ou quand vous avez simplement oublié le cd. La réponse est de vous déplacer dans le dossier qui contient package.json, et un ls est le plus rapide pour le voir. N'utilisez npm init -y que si vous voulez réellement démarrer un nouveau projet ici : dans le mauvais dossier, il laisse un package.json orphelin qui embrouillera l'outillage plus tard.

Q. Comment le corriger ?

npm init -y — avant de le lancer, vérifiez plus haut ce que cette commande jette.

Q. Quel outil émet cela ?

npm. Cela relève de npm, et le message compte 11 mots.

Erreurs voisines