Si esta es 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.
[] Windows Server 2016
[] Mi instalación de Windows no está en inglés.
Devuelve el número de versión correcto.
module.js: 491
tirar err;
^
Error: no se puede encontrar el módulo 'semver'
en Function.Module._resolveFilename (module.js: 489: 15)
en Function.Module._load (module.js: 439: 25)
en Module.require (module.js: 517: 17)
en require (internal / module.js: 11:18)
en Object.
en Module._compile (module.js: 573: 30)
en Object.Module._extensions..js (module.js: 584: 10)
en Module.load (module.js: 507: 32)
en tryModuleLoad (module.js: 470: 12)
en Function.Module._load (module.js: 462: 3)
module.js: 491
tirar err;
^
Error: no se puede encontrar el módulo 'semver'
en Function.Module._resolveFilename (module.js: 489: 15)
en Function.Module._load (module.js: 439: 25)
en Module.require (module.js: 517: 17)
en require (internal / module.js: 11:18)
en Object.
en Module._compile (module.js: 573: 30)
en Object.Module._extensions..js (module.js: 584: 10)
en Module.load (module.js: 507: 32)
en tryModuleLoad (module.js: 470: 12)
en Function.Module._load (module.js: 462: 3)
nvm install 8.4.0
nvm use 8.4.0
npm -v
Este es un error de npm, no del todo un error de NVM. Sugeriría reinstalar el nodo 8.4.0 ... tal vez la descarga de npm fue mala o algo estaba dañado.
@coreybutler No funciona, sigue fallando incluso desactivando, desinstalando, quitando manualmente la carpeta reinstalando y reactivando. Mismo error.
Incluso copié las dependencias node_modules de npm de otra instalación normal en funcionamiento del nodo 8.5.0 y sigo teniendo problemas. ¿Podrías investigar más y ver cuál es el problema?
El nvm es una herramienta muy útil pero ya no funciona, y es una pena :(
No estoy seguro de qué decirte ... Puedo instalar semver
muy bien con la misma configuración.
@coreybutler acaba de abrir una nueva edición con los detalles
Mi propio entorno y los pasos que utilicé para replicar el problema aquí (duplicado cerrado): # 305
Lo mismo en el último 8.8.1.
No estoy seguro de cómo solucionar esto a través de NVM, ya que lo que SO sugiere es una reinstalación limpia del nodo. Dada la naturaleza de las instalaciones de nvm, no estoy seguro de cómo replicar estos pasos. Entonces, ¿la única forma de usar el nodo v8 es simplemente no usar NVM?
https://stackoverflow.com/questions/33870520/npm-install-cannot-find-module-semver
nvm install 8.8.1
(u otra versión que desee). No lo cambie (todavía).%APPDATA%/nvm/v8.8.1/npm
por la carpeta npm
del archivo descargadonvm use 8.8.1
gracias @ roman-spiridonov acaba de encontrar el mismo error en el nodo 8.8.1 instalado a través de nvm en Windows y su solución parece funcionar
Parece que también ha funcionado con la última versión de node (9.1.0).
parece que npm que está instalado desde npm no es compatible con el nodo en sí, debe descargar el zip y reemplazar el módulo npm como sugirió @ roman-spiridonov
@coreybutler, ¿esto no se abordará? Veo exactamente el mismo error exactamente: cualquier cosa por encima de = <8.0.
Desafortunadamente, no puedo ejecutar npm i semver
Recibo el mismo error.
@ roman-spiridonov No encuentro que "npm" sea una carpeta, sino un archivo en el .zip descargado. Reemplazarlo con el descargado no parece resolver los problemas de semver para mí (sé que otros han tenido éxito)
Tengo el mismo problema.
La solución alternativa de @ roman-spiridonov funciona para mí.
node 8.9.1
npm 5.5.1
@hyndsite , debe buscar dentro del directorio node_modules , dentro de ese directorio npm . Usa eso y debería funcionar.
Gracias @powellian Lo encontré ayer e iba a publicar una nueva actualización en el mensaje de @ roman-spiridonov, que la ruta correcta es %APPDATA%/nvm/v8.8.1/node_modules/npm
El archivo "npm" en la ruta /nvm/vx.xx ayudó a confundir el asunto.
Gracias, funciona, pero ahora me pregunto por qué el paquete que descarga nvm y el que descargamos es diferente.
El mismo problema con 8.9.0 y la solución alternativa de @ roman-spiridonov salvó el día.
Como @benavern , tengo curiosidad por saber por qué el paquete que instala nvm es diferente al del repositorio oficial.
Lo mismo en la última versión 8.9.4.
El error se resolvió eliminando el directorio 'C: \ Users \ yourname \ AppData \ Roamingnvm \ v *' y volviendo a ejecutar 'nvm install'.
Si encuentra este problema y está usando Windows 10, habilite rutas largas usando el Editor del Registro o el Editor de políticas de grupo local.
Ref: https://github.com/coreybutler/nvm-windows/issues/305#issuecomment -345024594
Ref: https://superuser.com/a/1119948
Pero para mí, todavía necesitaba hacer la solución de @ roman-spiridonov. Sin embargo, no pude copiar la carpeta npm en Explorer, en su lugar, necesitaba usar robocopy:
robocopy "C:\Users\username\Downloads\node-v8.9.4-win-x64\node_modules\npm" "C:\Users\username\AppData\Roaming\nvm\v8.9.4\node_modules\npm" /mir
alternativo para mover la raíz nvm. haga nvm root C:\nvm
antes de instalar el nuevo nodo.
Es posible que también deba copiar archivos adicionales a la nueva raíz.
si ya está instalado, entonces:
nvm uninstall 8.x.x
nvm root C:\nvm
copy /Y %APPDATA%\nvm\* C:\nvm
nvm install 8.x.x
Experimenté el mismo problema (Error: No se puede encontrar el módulo 'semver').
Algunos consejos para empezar:
La comparación de archivos (utilizando un archivo zip oficial) mostró que, de hecho, faltan archivos y carpetas> 4k en node_modules\npm
. Parece que se canceló la descompresión. Verificado para v8.9.1 y v8.9.4: faltan todos los node_modules alfabéticamente detrás de libnpx
. No me sorprendería si se relaciona con esa estructura de carpetas ridículamente anidada: ...\nvm\v8.9.4\node_modules\npm\node_modules\libnpx\node_modules\yargs\node_modules\read-pkg-up\node_modules\read-pkg\node_modules\load-json-file\node_modules\parse-json\node_modules\error-ex\node_modules\is-arrayish\
Tomé el maestro actual de nvm-windows, agregué información de depuración a la función de instalación dentro de nvm.go
, lo compilé (con Go 1.10 win x64) e intercambié el nvm.exe por el nuevo. Resultado:
Ahora, para la parte sorprendente, cuando intenté encontrar la regresión:
Me parece que hay un problema con el proceso de compilación y / o el entorno.
Sería genial si alguien más pudiera intentar si recrear el nvm.exe a través de build.bat o go build src/nvm.go
resuelve el problema para él / ella.
HTH, carcasa de código
Eliminar la carpeta npm de la carpeta de abajo
C: \ Usersusername \ AppData \ Roamingnpm
after => npm install
¡Esta trabajando bien para mi!....
Me encontré con este problema hoy y funcionó para mí.
1) Abra una terminal bash
2) CD en C: \ Usersusername \ AppData \ Roamingnpm \ node_modules \
3) debería ver un package.json
4) instalación de hilo
@codeshell Gracias por su análisis. Encontré que el problema se debe a las rutas largas que no son compatibles con Windows. Para mí, incluso después de descargar el archivo zip npm y reemplazar el contenido de C: \ Users \ yourname \ AppData \ Roamingnvm \ 9.11.1npm, recibí el error. De hecho, no pude copiar todos los archivos del archivo zip npm descargado debido a los nombres largos.
Para evitar esto, desinstalé la versión 9.11.1 del nodo y luego desinstalé nvm. Nvm reinstalado en C: nvm. Ahora mi 'nvm install 9.11.1' normal funciona bien y 'npm' también está en buen estado, confirmado ejecutando 'npm -v'.
Sé que esta es una solución bastante drástica, pero solo necesito hacerlo una vez.
Seguí estos pasos y resolvió mi problema.
instalar el nodo a través de nvm 1.6.0 funcionó para mí
En mi caso, los caminos eran demasiado largos. Elegí c: nvm como administrador de versiones del directorio de instalación y c: \ nodejs para el directorio de enlace simbólico. Eso pareció resolver el problema para mí.
Tuve el mismo problema con el nodo v10.4.0 y la solución de roman-spiridonov funcionó para mí.
Ya había eliminado %AppData%\npm
etc. antes de instalar nvm-windows.
Intenté poner en funcionamiento 10.4.1, pero al principio tuve problemas.
Lo puse en funcionamiento después de eliminar la carpeta de la ubicación de instalación manualmente e instalar a través de nvm
nuevamente. No estoy seguro de si esta es una ruta demasiado larga (obviamente no) C:\Users\muser\AppData\Roaming\nvm\v10.4.1
.
El mismo problema con la solución v10.5.0 y roman-spiridonovs también funcionó para mí.
Tengo el mismo problema al instalar el último nodo v10.6.0, luego lo desinstalé y cambié a v8.11.3, problema resuelto.
También intenté descargar directamente el npm-v6.1.0.zip, tiene algunos errores al descomprimir.
Experimentó el mismo problema que @shadeofgod con 10.6.0. Cambiar a 8.11.3 lo solucionó.
El problema persiste con 10.6.0-64bit para una primera instalación completamente limpia. (sin nodo / npm antes). La solución roman-spiridonovs continúa funcionando (para mí, la carpeta npm ahora se puede encontrar en [...node]\node_modules\npm
)
¿Por qué sigue siendo un problema después de casi todo un año?
Acabo de encontrar este problema en Windows 10.
Habilitar las rutas largas de Win32 solucionó el problema. Ver publicación de @apptaro (2018-02-15)
Después de habilitar rutas largas, reinicié Windows para que se aplicara el cambio.
También tuve que eliminar la instalación npm
rota manualmente.
Después de eso, pude instalar npm
nuevamente usando nvm
.
Creo que nvm
en Windows debería emitir advertencias si las rutas largas no están habilitadas. nvm install
tampoco debería fallar silenciosamente.
Para mi:
Este es el script de PowerShell que usamos para los principiantes. Con suerte, después de un reinicio, la idea es poder actualizar a una versión posterior.
# Get Chocolatey which is required for the rest of this script
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco feature enable -n=allowGlobalConfirmation
choco upgrade chocolatey
choco upgrade nvm
$env:NVM_HOME = [System.Environment]::ExpandEnvironmentVariables([System.Environment]::GetEnvironmentVariable("NVM_HOME","Machine"))
$env:NVM_SYMLINK = [System.Environment]::ExpandEnvironmentVariables([System.Environment]::GetEnvironmentVariable("NVM_SYMLINK","Machine"))
$env:Path = [System.Environment]::ExpandEnvironmentVariables([System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User"))
# Enable long paths in windows - may avoid npm issue https://github.com/coreybutler/nvm-windows/issues/302
New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1 -PropertyType DWORD -Force | Out-Null
New-ItemProperty -Path 'HKLM:\SYSTEM\ControlSet001\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1 -PropertyType DWORD -Force | Out-Null
nvm install 9.11.2
nvm use 9.11.2
No estoy seguro de qué decirte ... Puedo instalar
semver
muy bien con la misma configuración.
Creo que ejecutar "npm install" resolvería el problema, como lo hizo conmigo;)
Creo que @momochanmo se había olvidado de instalar el paquete semver en su proyecto. Tiene el mismo mensaje de error, pero este es un problema totalmente diferente.
En resumen: este hilo trata sobre el hecho de que nvm instala una versión dañada de npm con una versión del paquete semver que falta o está dañada, lo que lo vuelve inoperable.
La causa raíz más probable sugerida hasta ahora es que un error / cambio de comportamiento introducido en el compilador Go hace unos 3 años provoca un error que se ingiere silenciosamente durante la instalación. Consulte https://github.com/coreybutler/nvm-windows/pull/370.
Entonces, si conoces a alguien que trabaja con Windows y está entusiasmado con Go, ahora es un buen momento para darle una palmada en el hombro y ofrecerle esta excelente oportunidad de desarrollo profesional 😅
Seguí estos pasos y resolvió mi problema.
- desinstalar Node.js
- Eliminar el contenido de las siguientes carpetas
C: \ Usuarios\ AppData \ Roamingnpm-cache
C: \ Usuarios\ AppData \ Roamingnpm
C: \ Archivos de programa \ nodejs- Luego, vuelva a instalar Node _ https://nodejs.org/en/_
Seguir esto funcionó para mí. ¡¡¡¡¡Eres un salvavidas!!!!! gracias <3
Comentario más útil
Lo mismo en el último 8.8.1.
No estoy seguro de cómo solucionar esto a través de NVM, ya que lo que SO sugiere es una reinstalación limpia del nodo. Dada la naturaleza de las instalaciones de nvm, no estoy seguro de cómo replicar estos pasos. Entonces, ¿la única forma de usar el nodo v8 es simplemente no usar NVM?
https://stackoverflow.com/questions/33870520/npm-install-cannot-find-module-semver
Solución alterna
nvm install 8.8.1
(u otra versión que desee). No lo cambie (todavía).%APPDATA%/nvm/v8.8.1/npm
por la carpetanpm
del archivo descargadonvm use 8.8.1