web-dev-qa-db-fra.com

Toutes les commandes npm donnant la même erreur (ENOENT)

J'utilise Windows 8.1 x64 avec toutes les mises à jour.

J'utilisais nodejs 8.9.1 - J'ai pris une erreur sur la commande "npm -v".
J'ai donc désinstallé cette version et installé 8.9.3. Cela m'a donné la même erreur sur la commande.
Ensuite, j'ai désinstallé 8.9.3 et nettoyé tous les chemins en utilisant cette réponse; https://stackoverflow.com/a/20711410/1143249 Ensuite, vous avez installé un nouveau version 9.3.0 ...

Mais toujours, je reçois la même erreur dans toutes les commandes npm.
Qu'est-ce que je rate? Comment puis-je résoudre ce problème?

C:\Users\UserName\Desktop>npm -v
Error: spawn C:\Program Files\nodejs\node.exe ENOENT
    at _errnoException (util.js:999:13)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:201:19)
    at onErrorNT (internal/child_process.js:389:16)
    at process._tickCallback (internal/process/next_tick.js:152:19)
    at Function.Module.runMain (module.js:703:11)
    at startup (bootstrap_node.js:194:16)
    at bootstrap_node.js:618:3
C:\Program Files\nodejs\node_modules\npm\lib\npm.js:51
      throw new Error('npm.load() required')
      ^

Error: npm.load() required
    at Object.get (C:\Program Files\nodejs\node_modules\npm\lib\npm.js:51:13)
    at process.errorHandler (C:\Program Files\nodejs\node_modules\npm\lib\utils\error-handler.js:205:18)
    at process.emit (events.js:159:13)
    at process._fatalException (bootstrap_node.js:387:26)
5.5.1

events.js:136
      throw er; // Unhandled 'error' event
      ^

Error: spawn C:\Program Files\nodejs\node.exe ENOENT
    at _errnoException (util.js:999:13)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:201:19)
    at onErrorNT (internal/child_process.js:389:16)
    at process._tickCallback (internal/process/next_tick.js:152:19)
    at Function.Module.runMain (module.js:703:11)
    at startup (bootstrap_node.js:194:16)
    at bootstrap_node.js:618:3

Mise à jour:
Chaque fois que j'ai désinstallé nodejs, nettoyé/supprimé des dossiers et essayé ces versions;
- node-v9.3.0-x64 ne fonctionne pas
- node-v8.9.3-x64 ne fonctionne pas
- node-v8.9.1-x64 ne fonctionne pas
- node-v8.9.0-x64 ne fonctionne pas
- node-v7.10.0-x64 indique que le numéro de version est également une petite erreur.
Voici la sortie; 

C:\Users\UserName\Desktop>npm -v
5.6.0

events.js:163
      throw er; // Unhandled 'error' event
      ^

Error: spawn C:\Program Files\nodejs\node.exe ENOENT
    at exports._errnoException (util.js:1050:11)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
    at onErrorNT (internal/child_process.js:367:16)
    at _combinedTickCallback (internal/process/next_tick.js:80:11)
    at process._tickCallback (internal/process/next_tick.js:104:9)
    at Module.runMain (module.js:607:11)
    at run (bootstrap_node.js:427:7)
    at startup (bootstrap_node.js:151:9)
    at bootstrap_node.js:542:3

Mise à jour :
J'ai désinstallé la protection antivirus moyenne et installé le noeud node-v6.12.3-x64.msi. J'ai encore des problèmes, un exemple; Je ne peux pas exécuter de commandes telles que:  Node v6.12.3 on Windows 8.1 x64

Dernière mise à jour
Merci pour toutes les réponses (jusqu'à cette date: 10.02.2018 03:30 PM GTM + 3)
(J'ai terminé certains de mes travaux avec vm windows jusqu'à cette date, mais maintenant, j'ai de mauvaises nouvelles.)
J'ai épuisé toutes les options et j'ai encore beaucoup de travail à faire avec les packages npm. J'ai donc formaté ma machine et je la remplace par Windows 10 Enterprise x64. I Je ne peux pas essayer de nouvelles réponses maintenant, mais voici le point d'or de ce que j'ai appris; Si vous avez une machine essentielle à la mission, telle que ci-build (jenkins, etc.) ou Si vous n'avez pas plus d'un ordinateur (et que vm n'est pas une option) sauvegardez votre disque complètement de temps en temps car vous ne saurez jamais vos logiciels d’ordinateur (comme node-npm) pourraient donner une erreur intéressante comme celle-ci. C'est ce que j'ai appris en disant ...

8
Lost_In_Library

La solution de contournement consiste à vérifier que C:\Utilisateurs\{utilisateur}\AppData\Roaming\npm existe et qu'il est accessible en écriture avec votre compte d'utilisateur normal.

voir Dépannage

1
Gabriel Bleu

Bien que vous n’ayez pas testé Node sous Windows 8, je vous suggère de vous débarrasser totalement de l’installation de npm dans le dossier AppData. Vous pouvez y parvenir en utilisant un gestionnaire de version de nœud. Je recommande Nodist . Vous pouvez également basculer facilement entre les versions.

Avec Nodist, vous pouvez exécuter la commande en tant que telle:

 nodist 6.2.10

Une des choses que je soupçonne est l’accès limité de Node runtime aux fichiers requis sous le lecteur C:/ - peut-être quelque chose lié à Windows 8. Cela dit, vous pouvez installer nodist dans n’importe quel lecteur autre que C:/. En attendant, comme mentionné par @fjoe, restez avec les versions LTS, en particulier v6.x.x

1

Voici quelques éléments à prendre en compte lors du choix de votre version de node.js.

Les versions appelées LTS (support à long terme) sont les versions sur lesquelles elles s'appuient.

Vous pouvez voir une liste complète des versions ici remarquez la colonne LTS. Il est également intéressant de voir les versions de V8 et npm emballées avec chacune d’elles.

  • Le noeud 9. * n'a pas de version officielle LTS.
  • Le nœud 8. * est entré officiellement dans LTS le 10-31-2017 (il y a 3 mois).
    • J'ai personnellement eu des problèmes avec ça.
  • Le nœud 7. * n'a jamais été officiellement publié en tant que LTS.
  • Le nœud 6. * a 2 ans de publications LTS officielles et ils continuent à le supporter.
    • Avec la dernière version le 01-02-2018.

Étant donné ces informations, je vous recommande d'essayer le supporté depuis longtemps et éprouvé version 6. *

Si cela fonctionne, attendez peut-être sur la version 8. * jusqu'à ce que plus de choses soient réglées.

D'autres personnes ont commenté votre question sur les variables d'environnement pour node ou npm. Ce n'est évidemment pas le problème car les commandes sont reconnues et en cours d'exécution (mais elles sont erronées).

Je vous recommande également de suivre ce guide de désinstallation complet: Comment supprimer complètement de node.js de Windows

0
fjoe

Je suppose que le problème peut être dans NPM lui-même. essayez de mettre à jour votre NGP. 

Essayez d'utiliser cette excellente approche

En passant, il est bon de savoir quelle version de npm vous avez avec vos modifications des versions de node.js

0

D'après les journaux que vous avez fournis, cela ressemble à un bogue de cache, à cause de fichiers indésirables qui existaient précédemment et qui posent des problèmes.

Ouvrez l'invite de commande avec les privilèges d'administrateur et suivez les étapes ci-dessous:

1) Effacez le cache: npm cache clean --force. Vous pouvez également exécuter npm cache verify.

2) Supprimez le dossier node_modules en utilisant: rm -rf node_modules.

3) Supprimez tout fichier package-lock.json.

4) Supprimez le répertoire .npm.

5) Supprimer les répertoires suivants: 

   5.1) C:\Users\<username>\AppData\Roaming\npm\. 

   5.2) C:\Users\<username>\AppData\Roaming\npm-cache.

6) Essayez également de définir des variables d’environnement:

C:\Users\<username>\AppData\Roaming\npm;C:\Program Files\nodejs.

Tapez dans la ligne de commande: which npm.

Peut-être que vous n'avez pas défini la valeur système: NODE_PATH devrait pointer vers l'emplacement de votre module global.

7) Mettez à jour le dernier npm avec npm i -g npm@latest.

J'espère que le tour ci-dessus résoudra votre problème.

Merci.

0
Suhas Gavad

Je suppose qu'en installant Node.js, il ne peut pas définir son chemin d’environnement pour des raisons de permission.

Vous devez configurer le chemin de nœud manuellement dans les variables d'environnement.

0

Mon ami codeur a eu une erreur similaire hier, bien que sous Linux.

L'erreur était dans le dossier node_modules. Il a donc été résolu de le supprimer et de le réinstaller. 

Ce serait votre dossier node_module dans AppData\Roaming\npm. 

0
FlamingDrake