Nvm-windows: No se puede instalar el paquete npm más reciente

Creado en 13 dic. 2019  ·  6Comentarios  ·  Fuente: coreybutler/nvm-windows

Asegúrese de haber revisado los problemas comunes y los problemas existentes antes de enviar un nuevo problema.

Si se trata de una pregunta sobre cómo usar NVM4W, use stackoverflow en su lugar.

Si se trata de un problema relacionado con el antivirus, asegúrese de buscar primero los problemas existentes.

mi entorno

  • [ ] Windows 7 o anterior (no es realmente compatible debido a EOL; consulte la wiki para obtener más detalles)
  • [ ] ventanas 8
  • [ ] Windows 8.1
  • [X] Windows 10
  • [ ] Núcleo de Windows 10 IoT
  • [ ] Servidor Windows 2012
  • [ ] Servidor Windows 2012 R2
  • [ ] Servidor Windows 2016

  • [ ] Mi instalación de Windows no está en inglés.

Estoy usando la versión NVM4W:

Ejecute nvm version si no lo sabe.

1.1.7.

Mi problema está relacionado con (marque solo los que correspondan):

  • [ ] configuración.txt
  • [ ] soporte de proxy (¿Has probado la versión 1.1.0+?)
  • [ ] Soporte de 32 o 64 bits (¿Has probado la versión 1.1.3+?)
  • [ ] Escape de caracteres (¿Has probado la versión 1.1.6+?)
  • [x] Un entorno de shell estándar (terminal/powershell)
  • [ ] Un entorno de shell no estándar (Cmder, Hyper, Cygwin, git)

Comportamiento esperado

Espero npm-version-windows

Comportamiento real

PD C:\WINDOWS\system32> npm install npm-windows-upgrade -g
C:\Archivos de programa\nodejs\npm-windows-upgrade -> C:\Archivos de programa\nodejs\node_modules\npm-windows-upgrade\bin\npm-windows-upgrade.js

  • [email protected]
    agregó 72 paquetes de 51 colaboradores en 8.124 s
    PS C:\WINDOWS\system32> npm-windows-upgrade -p -v más reciente
    npm-windows-upgrade v6.0.1
    Sistema comprobado para la instalación de npm:
    Según PowerShell: C:\Program Files\nodejs
    Según npm: C:\Program Files\nodejs
    Decidió que npm está instalado en C:\Program Files\nodejs
    Actualizando npm...

Actualizando npm (método alternativo)...

Quería instalar npm 6.13.4, pero la versión instalada es 6.9.0.

Una razón común es un intento de "npm install npm" o "npm upgrade npm". A partir de hoy, la única solución es desinstalar completamente y luego reinstalar Node.js. Para ver un pequeño tutorial, consulte https://github.com/felixrieseberg/npm-windows-upgrade#usage.

Considere informar su problema a https://aka.ms/npm-issues.

Información de depuración:

nodo: 12.6.0 | v8: 7.5.288.22-nodo.14 | ultravioleta: 1.30.1 | zlib: 1.2.11 | brotli: 1.0.7 | áreas: 1.15.0 | módulos: 72 | nghttp2: 1.38.0 | napis: 4 | llhttp: 1.1.4 | http_parser: 2.8.0 | abre SSL: 1.1.1c | cldr: 35.1 | UCI: 64,2 | tz: 2019a | código único: 12.1 | sistema operativo: win32 x64 | Nombre del sistema operativo: Microsoft Windows 10 Enterprise
Versión del SO: 10.0.17134 N/A Compilación 17134

Pasos para reproducir el problema:

Me gustaría obtener el último paquete npm 6.13.4 [sin problemas de seguridad] con la versión de nodo 12.13.1

Comentario más útil

Esto funcionó para mí, pero no lo juraré como la respuesta para todos:

  1. Use nvm install para configurar la instalación del nodo.
  2. Ejecute nvm use para configurar la versión actual.
  3. Ábralo en la versión actual en el Explorador de archivos. (Desde PowerShell, puede hacer esto con explorer.exe $env:NVM_SYMLINK . Desde el símbolo del sistema, es explorer.exe %NVM_SYMLINK% ).
  4. Elimine los archivos npm, npx, npm.cmd y npx.cmd. No creo que hubiera ningún archivo ps1 cuando lo configuré, pero también lo eliminé. Cuidadoso. No conozco los efectos completos de esta eliminación si falla la actualización. Debe guardarlos en la Papelera de reciclaje para poder restaurarlos o estar preparado para realizar una reinstalación completa de la versión de Node si falla.
  5. Ahora que se eliminó el script, tenemos que invocar npm un poco más manualmente. Aquí está el comando de PowerShell para invocar su comando de actualización:
    node (Join-Path $env:NVM_SYMLINK 'node_modules\npm\lib\npm.js') install -g npm

Esto funcionó para mí porque cuando ejecuté npm install -g npm , el error que recibí fue que los archivos de script de nivel superior estaban "fuera" de la instalación, lo que supongo que significa que no fueron reconocidos como administrados por ella. No sé por qué npm pensó que no controlaba esos archivos, pero una vez que estuvieron fuera de su camino, se actualizó sin problemas.

Todos 6 comentarios

https://nodejs.org/en/blog/vulnerability/december-2019-security-releases/ tratando de obtener la última versión de npm para este problema de seguridad.

Esto funcionó para mí, pero no lo juraré como la respuesta para todos:

  1. Use nvm install para configurar la instalación del nodo.
  2. Ejecute nvm use para configurar la versión actual.
  3. Ábralo en la versión actual en el Explorador de archivos. (Desde PowerShell, puede hacer esto con explorer.exe $env:NVM_SYMLINK . Desde el símbolo del sistema, es explorer.exe %NVM_SYMLINK% ).
  4. Elimine los archivos npm, npx, npm.cmd y npx.cmd. No creo que hubiera ningún archivo ps1 cuando lo configuré, pero también lo eliminé. Cuidadoso. No conozco los efectos completos de esta eliminación si falla la actualización. Debe guardarlos en la Papelera de reciclaje para poder restaurarlos o estar preparado para realizar una reinstalación completa de la versión de Node si falla.
  5. Ahora que se eliminó el script, tenemos que invocar npm un poco más manualmente. Aquí está el comando de PowerShell para invocar su comando de actualización:
    node (Join-Path $env:NVM_SYMLINK 'node_modules\npm\lib\npm.js') install -g npm

Esto funcionó para mí porque cuando ejecuté npm install -g npm , el error que recibí fue que los archivos de script de nivel superior estaban "fuera" de la instalación, lo que supongo que significa que no fueron reconocidos como administrados por ella. No sé por qué npm pensó que no controlaba esos archivos, pero una vez que estuvieron fuera de su camino, se actualizó sin problemas.

@myty Nuevamente, no puedo hablar por todos, pero npm-windows-upgrade fracasó miserablemente para mí. Su mensaje de error fue incluso más críptico e inútil que el que recibí de npm install -g npm . (No recuerdo el mensaje de error exacto; creo que era extremadamente genérico). Sin embargo, es posible que estemos enfrentando problemas diferentes.

Esto también funciona. #300 (comentario)

Esto funcionó para mí en el pasado, pero ahora, al intentar actualizar npm de 6.13.4 a 6.13.6 (usando el nodo 12.16.0), aparece el siguiente error:

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

¿Alguien más se ha topado con este problema y ha podido resolverlo? Lo intenté con --force pero el mismo error.

Instalé Nodist antes de nvm-windows. Dejó un archivo .npmrc en el directorio de inicio ( %userprofile% ). Tuve que eliminarlo y probar el comando nvm use nuevamente para que todo saliera bien.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

snerte picture snerte  ·  5Comentarios

Deilan picture Deilan  ·  4Comentarios

eliavmaman picture eliavmaman  ·  6Comentarios

waiholiu picture waiholiu  ·  7Comentarios

AllainPL picture AllainPL  ·  7Comentarios