j'ai essayé d'installer Grunt sur un Mac avec Yosemite. Le noeud est déjà installé dans la dernière version. Si je tape "noeud -v" dans le terminal, je reçois la ligne v0.12.5. c'est bon. mais quand je veux installer quelque chose avec NPM, je ne reçois qu'une erreur ...
j'ai essayé "Sudo npm installer -g grunt-cli", "Sudo npm installer npm -g" et aussi avec "npm -v" je reçois toujours cette erreur ...
Error: Cannot find module 'are-we-there-yet'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/usr/local/Cellar/node/0.10.22/lib/node_modules/npm/node_modules/npmlog/log.js:2:16)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
quelqu'un sait quel est le problème ou mieux une solution?
Vous avez cassé npm
en supprimant certaines de ses dépendances.
are-we-there-yet
est une dépendance de npmlog
qui est une dépendance de npm
elle-même, et vous l'avez en quelque sorte supprimée. La solution simple habituelle dans de tels cas est de réinstaller un paquet, mais cela ne fonctionne pas si npm
ne peut pas fonctionner. Heureusement, l'archive npm
est fournie avec des dépendances et par conséquent installer npm
de toutes pièces est aussi simple que de décompresser une archive.
1) Allez dans le répertoire global node_modules
(que npm root -g
afficherait-il si vous pouviez le lancer):
$ cd /usr/local/lib/node_modules
2) Supprimez le répertoire npm
cassé ou déplacez-le ailleurs (notez qu'il peut être nécessaire d'élever les autorisations pour cela et les étapes suivantes):
$ mv npm /tmp
3) Téléchargez et décompressez les nouvelles variables npm
du registre (remplacez la version que vous souhaitez installer, par exemple 3.10.8
):
$ curl -L registry.npmjs.com/npm/-/npm-{VERSION}.tgz | tar xz --transform="s:^package:npm:"
Vous pouvez en automatiser une partie avec ce script d'installation:
$ curl -L https://www.npmjs.com/install.sh | sh
À ce stade, npm
devrait fonctionner à nouveau.
Accédez au répertoire global node_modules (npm root -g si vous ne le savez pas).
$ cd /usr/local/lib/node_modules
curl -L https://www.npmjs.com/install.sh | sh
J'ai essayé fébrilement de me procurer la dernière version de node et npm sur ma machine centos 7.
Malheureusement, cette erreur me tourmente depuis près d’une semaine. Et j'ai enfin trouvé une solution qui fonctionne.
Si votre npm est actuellement endommagé, il est plus simple de réinstaller une version fonctionnelle.
J'ai installé du code. En supposant que git soit installé, les commandes suivantes permettront d'atteindre cet objectif
cd ~
git clone https://github.com/nodejs/node.git nodejs_code
cd nodejs_code
./configure
make
make install
Une fois que vous avez installé une nouvelle copie de npm et de node, qui d’ailleurs n’est pas la version stable (à la place, son bord droit depuis le source).
La version installée du noeud au moment de l'écriture était 5.0.0-pre, ce qui est trop nouveau pour moi, et npm était la version 2.14.4, qui est trop ancienne pour moi.
Pour obtenir la dernière version sur le noeud, je vais installer le paquet 'n' en utilisant npm. En utilisant n, je vais installer la dernière version de node.
npm install -g n
n stable
Dans le cas de l'utilisateur root (que j'utilise pour installer des packages globaux), je devais ajouter la ligne suivante à mon fichier ~/.bashrc
, ce qui permettrait à l'utilisateur root d'accéder aux commandes dans les commandes/usr/local/bin. (Vous n'avez peut-être pas besoin de cette étape)
export PATH=/usr/local/bin:$PATH
À ce stade, ma version du noeud est la version 4.0.0, qui est la dernière version stable du noeud.
maintenant pour mettre à jour npm, ce qui était la chose la plus agaçante de tous les temps.
La mise à jour directe vers la version la plus récente entraînait toujours le message "sommes-nous-là-encore", ce que je ne pouvais que supposer comme "NON, et quitte le processus de demande ou je retourne ce noeud"
Au lieu de cela, j’ai trouvé que l’installation préalable via la version 3.3.3 résoudrait ce problème.
npm install -g [email protected]
la version 3.3.3 est maintenant installée et fonctionne sans l'erreur "sommes-nous-y-sommes-encore".
Dieu merci. Gardez vos bras à l'intérieur et vos ceintures de sécurité attachées, parce que nous y sommes presque .....
npm install -g npm
et avec cette dernière commande, j'ai pu utiliser la dernière version de npm, avec la dernière version stable de node. Ce qui au moment de l'écriture est 3.3.5
A partir de maintenant, mes commandes sont les suivantes.
n stable
npm install -g npm
chaque fois que je les lance à partir de maintenant, on m'accorde des voyages tranquilles sans que les enfants se plaignent à l'arrière.
Étant donné que je modère un certain nombre de serveurs, dont aucun ne vient avec un nœud par défaut, je dois effectuer cette tâche encore et encore.
C'est pourquoi j'ai pris sur moi de transformer ces instructions en script.
Prendre plaisir:
importnode.sh
#!/bin/bash
cd ~
git clone https://github.com/nodejs/node.git nodejs_code
cd nodejs_code
git reset --hard
git pull Origin master
./configure
make
make install
if [[ `cat ~/.bashrc |grep -E "PATH.*/usr/local/bin:.*"` ]];
then
echo "Already Done";
else
echo "export PATH=/usr/local/bin:\$PATH" >> ~/.bashrc;
export PATH=/usr/local/bin:$PATH;
fi;
npm install -g n
n stable
npm install -g [email protected]
npm install -g npm
La seule chose qui reste à faire après avoir ajouté ceci dans nodeimport.sh est de le rendre exécutable et de l’exécuter.
$ chmod +x importnode.sh
$ ./importnode.sh
Attendez un peu, tout est installé.
Ce que eush77 a dit, mais si vous êtes sous Windows:
téléchargez le dernier package à partir de https://nodejs.org/download/release/npm/
décompressez et remplacez le répertoire "npm" dans le répertoire nodejs node-modules (par défaut, C:\Program Files\nodejs\node_modules)
Même si j'avais le même problème, le moyen le plus simple de résoudre les étapes ci-dessous a fonctionné pour moi.
1) désinstaller Nodejs.
2) Allez au C:/User/AppData/Roaming.
3) Supprimer le répertoire npm
.
4) Réinstallez Nodejs
(last v6.11.3 , includes npm 3.10.10 ).
5) Terminé Maintenant, essayez de vérifier (npm -v
) fonctionnera correctement.
J'ai suivi les instructions ci-dessus (ce que eush77 a dit) pour supprimer le dossier npm du dossier node_modules. Mais il reste le lien rompu à l'origine de ce message d'erreur.
/usr/local/bin/npm: Aucun fichier ni répertoire de ce type
alors supprimez le lien brisé:
rm /usr/local/bin/npm
et ensuite le faire pointer au bon endroit comme ceci:
Sudo ln -s /usr/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm
Vous pouvez également réinstaller node
à partir de https://nodejs.org/en/download/current/
Pour moi, cela avait à voir avec des installations corrompues et peut-être que les dépôts d'ubuntu n'étaient pas compatibles ou les plus récents. Les éléments suivants ont abouti à une installation de npm/node qui fonctionne:
Sudo curl -sL https://deb.nodesource.com/setup_4.x | Sudo -E bash - Sudo apt-get install -y nodejs
Je l'ai réinitialisé en utilisant le paquet d'installation officiel trouvé: https://nodejs.org/fr/
Jouer avec n et nvm a finalement corrompu les packages node_modules pour moi en fournissant des packages incompatibles avec la version actuelle de Node.
Je soupçonne que cela fonctionnerait pour d’autres environnements car il couple l’installation de Node AND npm.
Pour moi, je devais supprimer le dossier node_modules
de mon projet. J'ai ensuite nettoyé le cache juste au cas où et ai fait une nouvelle npm i
et il a été capable de faire la post-installation de node-sass et non une erreur à are-we-there-yet
manquant.
Si le déplacement global node_modules
ne fonctionne pas pour vous comme dans les solutions ci-dessus, essayez:
node_modules
.__ local de votre projet.rm -rf node_moduldes
npm cache clean -f
npm i
Je viens d'avoir le même problème lors du déploiement du projet sur le serveur local lorsque j'appelais la commande yarn dev
.
Après avoir parcouru tous les blogs, articles et autres trucs, je l’ai obtenu simplement en utilisant ces 2 commandes.
npm list
vérifier à quelle version il pointe actuellement. Pour moi, quand j'ai eu cette erreur. Cela indiquait le système.
Je viens d'utiliser le nvm use v{VERSION}
par exemple. nvm use v10.5.0
(pour moi) et ça a fonctionné. Toutes les erreurs ont disparu et le projet a été déployé avec succès en appelant le yarn dev
. Essayez ceci avant de faire autre chose. Je recommande fortement.