Nvm-windows: Impossible d'installer le dernier package npm

Créé le 13 déc. 2019  ·  6Commentaires  ·  Source: coreybutler/nvm-windows

Assurez-vous d'avoir passé en revue les problèmes courants et les problèmes existants avant de soumettre un nouveau problème.

S'il s'agit d'une question sur l'utilisation de NVM4W, veuillez utiliser stackoverflow à la place.

S'il s'agit d'un problème concernant l'antivirus, assurez-vous de rechercher d'abord les problèmes existants.

Mon environnement

  • [ ] Windows 7 ou inférieur (pas vraiment pris en charge en raison de la fin de vie - voir le wiki pour plus de détails)
  • [ ] Windows 8
  • [ ] Windows 8.1
  • [x] Windows 10
  • [ ] Cœur IdO de Windows 10
  • [ ] Windows Serveur 2012
  • [ ] Windows Serveur 2012 R2
  • [ ] Windows Serveur 2016

  • [ ] Mon installation Windows n'est pas en anglais.

J'utilise la version NVM4W :

Exécutez nvm version si vous ne savez pas.

1.1.7.

Mon problème concerne (cochez uniquement ceux qui s'appliquent) :

  • [ ] paramètres.txt
  • Prise en charge du proxy [ ] (Avez-vous essayé la version 1.1.0+ ?)
  • [ ] Support 32 ou 64 bits (Avez-vous essayé la version 1.1.3+ ?)
  • [ ] Caractère d'échappement (Avez-vous essayé la version 1.1.6+ ?)
  • [ x] Un environnement shell standard (terminal/powershell)
  • [ ] Un environnement shell non standard (Cmder, Hyper, Cygwin, git)

Comportement prévisible

J'attends npm-version-windows

Comportement réel

PS C:\WINDOWS\system32> npm install npm-windows-upgrade -g
C:\Program Files\nodejs\npm-windows-upgrade -> C:\Program Files\nodejs\node_modules\npm-windows-upgrade\bin\npm-windows-upgrade.js

  • [email protected]
    ajouté 72 packages de 51 contributeurs en 8.124s
    PS C:\WINDOWS\system32> npm-windows-upgrade -p -v dernier
    npm-windows-upgrade v6.0.1
    Système vérifié pour l'installation de npm :
    Selon PowerShell : C:\Program Files\nodejs
    Selon npm : C:\Program Files\nodejs
    Décidé que npm est installé dans C:\Program Files\nodejs
    Mise à niveau de npm...

Mise à niveau de npm (méthode de secours)...

Vous vouliez installer npm 6.13.4, mais la version installée est 6.9.0.

Une raison courante est une tentative "npm install npm" ou "npm upgrade npm". À ce jour, la seule solution consiste à désinstaller complètement puis à réinstaller Node.js. Pour un petit tutoriel, veuillez consulter https://github.com/felixrieseberg/npm-windows-upgrade#usage.

Veuillez envisager de signaler votre problème à https://aka.ms/npm-issues.

Informations de débogage :

nœud : 12.6.0 | v8 : 7.5.288.22-nœud.14 | UV : 1.30.1 | zlib : 1.2.11 | Brotli : 1.0.7 | sont : 1.15.0 | module : 72 | nghttp2 : 1.38.0 | nombre : 4 | llhttp: 1.1.4 | analyseur_http : 2.8.0 | openssl : 1.1.1c | cldr : 35.1 | icu : 64,2 | tz: 2019a | unicode : 12.1 | système d'exploitation : win32 x64 | Nom du système d'exploitation : Microsoft Windows 10 Entreprise
Version du système d'exploitation : 10.0.17134 N/A Build 17134

Étapes pour reproduire le problème :

Je souhaite obtenir le dernier package npm 6.13.4 [aucun problème de sécurité] avec la version de nœud 12.13.1

Commentaire le plus utile

Cela a fonctionné pour moi, mais je ne le jurerai pas comme réponse pour tout le monde:

  1. Utilisez nvm install pour configurer l'installation du nœud.
  2. Exécutez nvm use pour définir la version actuelle.
  3. Ouvrez-le la version actuelle dans l'Explorateur de fichiers. (Depuis PowerShell, vous pouvez le faire avec explorer.exe $env:NVM_SYMLINK . À partir de l'invite de commande, c'est explorer.exe %NVM_SYMLINK% .)
  4. Supprimez les fichiers npm, npx, npm.cmd et npx.cmd. Je ne pense pas qu'il y avait de fichier ps1 lorsque je l'ai configuré, mais supprimez-les également. Prudent. Je ne connais pas tous les effets de cette suppression si la mise à niveau échoue. Vous devez soit les conserver dans la corbeille afin de pouvoir les restaurer, soit être prêt à effectuer une réinstallation complète de la version Node en cas d'échec.
  5. Maintenant que le script est supprimé, nous devons invoquer npm un peu plus manuellement. Voici la commande PowerShell pour invoquer sa commande de mise à jour :
    node (Join-Path $env:NVM_SYMLINK 'node_modules\npm\lib\npm.js') install -g npm

Cela a fonctionné pour moi car lorsque j'ai exécuté npm install -g npm , l'erreur que j'obtenais était que les fichiers de script de niveau supérieur étaient "en dehors" de l'installation, ce qui, je suppose, signifie qu'ils n'étaient pas reconnus comme gérés par celui-ci. Je ne sais pas pourquoi npm pensait qu'il ne contrôlait pas ces fichiers, mais une fois qu'ils étaient hors de son chemin, il s'est bien mis à jour.

Tous les 6 commentaires

https://nodejs.org/en/blog/vulnerability/december-2019-security-releases/ essayant d'obtenir la dernière version de npm pour ce problème de sécurité.

Cela a fonctionné pour moi, mais je ne le jurerai pas comme réponse pour tout le monde:

  1. Utilisez nvm install pour configurer l'installation du nœud.
  2. Exécutez nvm use pour définir la version actuelle.
  3. Ouvrez-le la version actuelle dans l'Explorateur de fichiers. (Depuis PowerShell, vous pouvez le faire avec explorer.exe $env:NVM_SYMLINK . À partir de l'invite de commande, c'est explorer.exe %NVM_SYMLINK% .)
  4. Supprimez les fichiers npm, npx, npm.cmd et npx.cmd. Je ne pense pas qu'il y avait de fichier ps1 lorsque je l'ai configuré, mais supprimez-les également. Prudent. Je ne connais pas tous les effets de cette suppression si la mise à niveau échoue. Vous devez soit les conserver dans la corbeille afin de pouvoir les restaurer, soit être prêt à effectuer une réinstallation complète de la version Node en cas d'échec.
  5. Maintenant que le script est supprimé, nous devons invoquer npm un peu plus manuellement. Voici la commande PowerShell pour invoquer sa commande de mise à jour :
    node (Join-Path $env:NVM_SYMLINK 'node_modules\npm\lib\npm.js') install -g npm

Cela a fonctionné pour moi car lorsque j'ai exécuté npm install -g npm , l'erreur que j'obtenais était que les fichiers de script de niveau supérieur étaient "en dehors" de l'installation, ce qui, je suppose, signifie qu'ils n'étaient pas reconnus comme gérés par celui-ci. Je ne sais pas pourquoi npm pensait qu'il ne contrôlait pas ces fichiers, mais une fois qu'ils étaient hors de son chemin, il s'est bien mis à jour.

@myty Encore une fois, je ne peux pas parler pour tout le monde, mais npm-windows-upgrade a lamentablement échoué pour moi. Son message d'erreur était encore plus énigmatique et inutile que celui que j'ai reçu de npm install -g npm . (Je ne me souviens pas du message d'erreur exact ; je pense que c'était juste extrêmement générique.) Il est possible que nous ayons été confrontés à des problèmes différents, cependant.

Cela fonctionne aussi. #300 (commentaire)

Cela a fonctionné pour moi dans le passé, mais maintenant, tout en essayant de mettre à jour npm de 6.13.4 à 6.13.6 (en utilisant le nœud 12.16.0), j'obtiens l'erreur suivante :

npm ERR! code EEXIST
npm ERR! path C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\node_modules\.bin\semver
npm ERR! Refusing to delete C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\node_modules\.bin\semver: is outside C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\node_modules\semver and not a link
npm ERR! File exists: C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\node_modules\.bin\semver
npm ERR! Remove the existing file and try again, or run npm
npm ERR! with --force to overwrite files recklessly.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\johns\AppData\Roaming\npm-cache\_logs\2020-02-18T20_00_16_440Z-debug.log

Quelqu'un d'autre a-t-il rencontré ce problème et a-t-il pu le résoudre ? J'ai essayé avec --force mais même erreur.

J'avais installé Nodist avant nvm-windows. Il a laissé un fichier .npmrc sous le répertoire personnel ( %userprofile% ). J'ai dû le supprimer et réessayer la commande nvm use pour que tout soit correct.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

fredericrous picture fredericrous  ·  3Commentaires

flpms picture flpms  ·  4Commentaires

thany picture thany  ·  4Commentaires

Deilan picture Deilan  ·  4Commentaires

janpio picture janpio  ·  3Commentaires