C:\Users\me> nvm install 8.10.0
Downloading node.js version 8.10.0 (64-bit)...
Complete
Creating C:\Users\me\AppData\Roaming\nvm\temp
Downloading npm version 5.6.0... Complete
Installing npm v5.6.0...
Installation complete. If you want to use this version, type
nvm use 8.10.0
C:\Users\me> nvm use 8.10.0
Now using node v8.10.0 (64-bit)
C:\Users\me> npm --version
module.js:549
throw err;
^
Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Function.Module.runMain (module.js:693:10)
at startup (bootstrap_node.js:188:16)
at bootstrap_node.js:609:3
module.js:549
throw err;
^
Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Function.Module.runMain (module.js:693:10)
at startup (bootstrap_node.js:188:16)
at bootstrap_node.js:609:3
El directorio C: \ Users \ me \ AppData \ Roaming \ nvm \ v8.10.0 \ node_modules existe, pero está vacío.
Tengo exactamente el mismo problema.
Verifique que su nombre de usuario no tenga espacio, en algunos casos "C: \ Users \ Name LastName \ AppData \ Roaming \ nvm", cuando cambié la carpeta de instalación de nvm a otra ubicación "C: \ node \ nvm", la instalación de nodo + npm funcionó bien.
No hay espacios (u otros caracteres impares) en nvm root
.
Tengo exactamente el mismo problema también con nvm 1.1.6 e instalando el nodo 10.6.0 (o cualquier otra versión de nodo).
Si navego a <nvm-root>/v10.6.0/node_modules
la carpeta está vacía. Esto se ajusta al mensaje de error al intentar ejecutar npm.
Directory of C:\Users\flawi\AppData\Roaming\nvm\v10.6.0\node_modules
09.07.2018 18:22 <DIR> .
09.07.2018 18:22 <DIR> ..
0 File(s) 0 bytes
2 Dir(s) 220.739.076.096 bytes free
Si observo el proceso de instalación después de nvm install 10.6.0
, puedo ver cómo se descarga y extrae npm en C:\Users\flawi\AppData\Roaming\nvm\temp
(veo el npm-v6.1.0.zip
y las carpetas extraídas). Sin embargo, después de la instalación, nada se mueve a <nvm-root>/v10.6.0/node_modules
.
Para completar, aquí está mi settings.txt
:
root: C:\Users\flawi\AppData\Roaming\nvm
path: C:\Program Files\nodejs
Por cierto, tengo el mismo problema también con las versiones 1.1.5 y 1.1.4 de nvm (también si uso rutas sin espacios).
Si copia npm-v6.1.0.zip
de <nvm-root>/v10.6.0/temp
después de completar la descarga y lo extrae usted mismo en <nvm-root>/v10.6.0/node_modules/npm
todo está funcionando bien.
Vi esto al intentar instalar el nodo 10.6.0 con 1.1.5. Incluso ejecuté un símbolo del sistema de administración desde el principio.
Si descargué el paquete 10.6.0 del sitio web nodejs.org y lo comparé con lo que estaba en el directorio nvm / v10.6.0, a lo que nvm instalado le faltaba más de la mitad de los paquetes npm.
Después de copiar, todo funcionó bien, pero nvm no dio ninguna indicación de que la instalación no se hubiera completado correctamente.
Tengo el mismo problema. Instalado 10.7.0, npm no funciona. No hay espacios en la raíz de nvm
Para aclarar, tenía una carpeta node_modules y una carpeta npm, pero faltaban archivos y no me dieron errores en ninguno de mis intentos de instalar o reinstalar. Una vez que eliminé esa carpeta npm, descargué npm-v6.1.0.zip manualmente y extraje mi npm funciona bien.
Problema similar (con una nueva instalación de nvm 1.1.5, después de desinstalar el nodo y eliminar los directorios npm en user \ AppData ...). Cuando escribo npm obtengo lo siguiente.
internal / modules / cjs / loader.js: 583
tirar err;
^
Error: no se puede encontrar el módulo 'npmlog'
en Function.Module._resolveFilename (internal / modules / cjs / loader.js: 581: 15)
en Function.Module._load (internal / modules / cjs / loader.js: 507: 25)
en Module.require (internal / modules / cjs / loader.js: 637: 17)
en require (internal / modules / cjs / helpers.js: 20: 18)
en C: \ Users \ timhu \ AppData \ Roaming \ nvm \ v10.7.0 \ node_modules \ npm \ bin \ npm-cli.js: 22: 13
en Object.
en Module._compile (internal / modules / cjs / loader.js: 689: 30)
en Object.Module._extensions..js (internal / modules / cjs / loader.js: 700: 10)
en Module.load (interno / módulos / cjs / loader.js: 599: 32)
en tryModuleLoad (internal / modules / cjs / loader.js: 538: 12)
internal / modules / cjs / loader.js: 583
tirar err;
^
Error: no se puede encontrar el módulo 'npmlog'
en Function.Module._resolveFilename (internal / modules / cjs / loader.js: 581: 15)
en Function.Module._load (internal / modules / cjs / loader.js: 507: 25)
en Module.require (internal / modules / cjs / loader.js: 637: 17)
en require (internal / modules / cjs / helpers.js: 20: 18)
en C: \ Users \ timhu \ AppData \ Roaming \ nvm \ v10.7.0 \ node_modules \ npm \ bin \ npm-cli.js: 22: 13
en Object.
en Module._compile (internal / modules / cjs / loader.js: 689: 30)
en Object.Module._extensions..js (internal / modules / cjs / loader.js: 700: 10)
en Module.load (interno / módulos / cjs / loader.js: 599: 32)
en tryModuleLoad (internal / modules / cjs / loader.js: 538: 12)
Entonces, estaba teniendo un problema similar a este y lo resolví. Transmitiré los pasos que tomé para resolverlo, y espero que ayude a alguien.
tldr;
prueba: nvm install <nodeversion> <32 or 64>
nvm install 8.11.4 64
Primero, instalé nvm, luego el nodo 8.11.4.
¿Nvm usó 8.11.4?
Cuando probé npm, Windows no pudo encontrarlo y la carpeta node_modules en la instalación 8.11.4 estaba vacía.
NVm desinstalado.
Intenté instalar nodejs directamente desde nodejs.org y me dio un error de ruta de archivo largo.
Puede que no sea necesario hacerlo, pero lo hice ...
Edité el registro de mi sistema para permitir rutas de archivo largas para todos los usuarios ->
En regedit, vaya a HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Policies y configure / cree una entrada DWORD (32 bits) llamada LongPathsEnabled con un valor de 1. (Hay una manera de hacer esto en Windows Pro sin ingresar al registro, pero yo ' estoy en casa, y esa no es una opción)
Nvm instalado de nuevo, luego nvm install 8.11.4
.
Tengo algún error de seguridad.
desinstalado 8.11.4
reinstalado ESPECIFICANDO 64 bits con el comando nvm install 8.11.4 64
Después de eso, todo parece funcionar.
Como dije, espero que esto ayude a alguien más, pero estoy seguro de que el kilometraje puede variar. ¡Buena suerte!
Tengo el mismo problema con nvm 1.1.7.
nvm install 6.5.0
nvm use 6.5.0
npm install -g gulp
AppData\Roaming\
y coloca gulp en \npm\node_modules
AppData\Roaming\nvm\v6.5.0\node_modules
solo tiene una carpeta npm¿Me faltan algunos parámetros PATH? Tengo %NVM_HOME%
y %NVM_SYMLINK%
Además de esto, parece que aunque gulp está instalado en la carpeta npm principal en Roaming, no se está utilizando. Si escribo el comando gulp, no puede encontrarlo, si muevo los archivos gulp a la carpeta nvm relevante, funciona.
Por lo tanto, busca sus comandos en el lugar correcto, pero no lo instala en el lugar correcto.
Ok, creo que he encontrado el problema. Parece que internamente npm todavía se aferra a la carpeta AppData \ Roaming para su configuración, una de las cuales es prefix
. Si lo hace npm config get prefix
, lo más probable es que apunte a la ubicación incorrecta. Debe ejecutar npm config set prefix
con la ubicación de la carpeta especial nodejs
que crea nvm, que es %NVM_SYMLINK%
. Ahora, cuando ejecuto todas mis instalaciones de npm, las coloca en la ubicación correcta, incluso si cambio las versiones de nvm.
Fuente de la corrección (no relacionada con nvm): https://stackoverflow.com/a/38270345/1535244
EDIT: El ajuste de prefix
está en el .npmrc
archivo en C:\Users\You\
carpeta. Si por alguna razón existe esa configuración, se usará y no parece que nvm la cambie, por lo que siempre buscará en la ubicación incorrecta. Eliminar esta entrada en este archivo también soluciona el problema.
No estoy seguro de si esto ayudará a alguien, pero lo dejaré aquí por si acaso. También tuve este problema y descubrí que lo que dijeron @dfibuch y @flawi fue bastante útil para comprender el problema que estaba teniendo. Así que aquí está toda mi información:
nvm
versión 1.1.6
; prefix=C:\Program Files\nodejs
de mi .npmrc
y el valor que obtenía con npm config get prefix
no cambió, sigue siendo ~\AppData\Roaming\npm
.En mi caso, estaba intentando instalar la última versión node
(actualmente 10.9.0
) porque necesitaba que mi versión npm
fuera >6
para poder ejecute npm audit
, y la última versión node
que instalé fue 8.11.3
, que venía con npm
versión 5.6.0
.
Antes de eliminar la configuración prefix
, cuando instalé la versión de nodo 10.9.0
con nvm install latest 64
todo lo que obtuve en mi carpeta ~\AppData\Roaming\nvm
fue una nueva carpeta llamada v10.9.0
que solo tenía node.exe
, pero no node_modules
(es como si ni siquiera estuviera intentando instalar npm
). Después de eliminar prefix
, comencé a obtener la carpeta node_modules
creada dentro de nvm\v10.9.0
, pero seguía recibiendo un error durante la instalación:
$ nvm install latest 64
Downloading node.js version 10.9.0 (64-bit)...
Complete
Downloading npm version 6.2.0... Download failed. Rolling Back.
Rollback failed. remove ~\AppData\Roaming\nvm\temp\npm-v6.2.0.zip: The process cannot access the file because it is being used by another process.
Could not download npm for node v10.9.0.
Please visit https://github.com/npm/npm/releases/tag/v6.2.0 to download npm.
It should be extracted to ~\AppData\Roaming\nvm\v10.9.0
Entonces, eliminar la configuración prefix
mejoró un poco las cosas para mí, pero no resolvió el problema por completo. También cerré todo y volví a intentarlo, por lo que no hay forma de que "otro proceso lo esté utilizando".
Después de eso, decidí probar el proceso de @flawi . Encontré el archivo npm-v6.1.0.zip
en mi carpeta nvm/temp
e intenté extraer npm
en mi carpeta nvm\v10.9.0
, y eso arrojó el error de que el archivo zip es dañado o tiene un formato incorrecto. Esa podría ser la razón por la que nvm no puede moverlo o extraerlo en mi última instalación de node.
Tal vez el problema no sea completamente nvm
, sino también la última versión de npm
dentro del nodo v 10.9.0
.
Volví a usar v 8.11.3
y actualicé npm
con npm install npm<strong i="59">@latest</strong> -g
. Se actualizó correctamente y puedo ejecutar npm audit
. Por eso creo que podría ser un problema con el paquete dentro de 10.9.0
pero no con el paquete en sí.
También me gustaría agregar que tuve un problema similar como @dfibuch. Instalé serve
globalmente hace una semana y se instaló en una carpeta diferente a ~\AppData\Roaming\npm\version\node_modules
, y también lo hice gulp
. Gulp funcionó de todos modos (no estoy completamente seguro de por qué) pero para que el paquete serve
funcione, tuve que copiarlo manualmente desde donde se instaló en la carpeta de mi versión dentro de nvm.
Actualice a v1.1.7, que resuelve # 373 (problemas con npm para Node 10.x.x +). El problema con los espacios en la ruta se resolvió en el maestro (a través de PR # 355) y está programado para su lanzamiento en 1.1.8. Si necesita la funcionalidad en este momento, puede compilar desde la fuente. Sacaré 1.1.8 tan pronto como pueda, pero todavía hay algunas otras correcciones que se están fusionando.
Cierre ya que los problemas / resoluciones antes mencionados deberían resolver este.
Tuve el mismo problema (directorio node_modules vacío) y la desactivación del antivirus resolvió el problema (usando nvm 1.1.7)
Igual que @sergioedo (deshabilitando el antivirus al instalar a través de nvm). ¡Gracias por la ayuda!
Sigue teniendo el mismo problema.
Todavía no he visto 1.1.8 después de un año @coreybutler
Pasando a dos años ahora @coreybutler , ¿nada?
@filipemerker
(2019-09-06) Estoy trabajando activamente en nuevas acciones de Github para crear lanzamientos. Hay varias contribuciones excelentes en master (que contiene la versión 1.1.8 que se lanzará), pero siempre tuve que construirlas a mano ... y como muchos de ustedes han notado, mi tiempo ha sido extremadamente limitado por bastante tiempo. La parte que lleva mucho tiempo es preparar la compilación de NSIS, pero una vez que se automatiza, debería ser mucho más fácil para las personas contribuir con los cambios y verlos realmente publicados.
Por supuesto, todavía no creo que 1.1.8 solucione esto (a menos que haya habido otros cambios no mencionados aquí). Hay algo en la forma en que intenta instalar npm que el antivirus realmente no le gusta, y un "deshabilitar AV" general no es algo que todos quieran o incluso puedan hacer.
Para McAfee Endpoint Security, es el "Análisis en tiempo real" lo que lo bloquea. Sin embargo, nunca hay nada en sus registros cuando lo hace (o solo son accesibles para mis administradores de red).
@tedyyu @filipemerker Las acciones de Github cambiaron por completo cuando estaba trabajando en él ... diferentes formatos, bibliotecas, etc. Tuve que reiniciar, luego Go cambió a módulos. En ese momento, estaba ocupado con otras cosas (mira esto y esto ). Por lo tanto, no hay nuevos lanzamientos. No ha pasado de mi radar ... de hecho, estamos trabajando en un entorno de desarrollo CLI completamente nuevo, ya que NVM4W es solo uno de muchos.
Una maqueta de borrador _muy_ temprano:
RE: Antivirus y npm
Las principales compañías de antivirus han enviado y aprobado NVM4W ... no estoy seguro de por qué seguirían quejándose, pero podría estar relacionado con npm. El nodo 8.xx usó una versión de npm con algunas dependencias de instalación codificadas de forma rígida (que ha sido una espina en el proceso durante varios años, a pesar de la desaprobación del nodo 8), lo que crea algunos comportamientos extraños.
@coreybutler como dije, no se queja, simplemente bloquea silenciosamente el extracto / movimiento / copia. Tampoco se debe a un npm antiguo (esto todavía sucede con las versiones más recientes y LTS). Este comentario es el que tiene los detalles: https://github.com/coreybutler/nvm-windows/issues/364#issuecomment -403754900
Acabo de ir y echar un vistazo al código fuente.
// a veces Windows puede tardar un tiempo en habilitar el acceso a grandes cantidades de archivos después de descomprimirlo, use la retirada exponencial para esperar hasta que esté listo
Si eso es cierto, puede ser que el antivirus lo esté ralentizando enormemente al escanear cada archivo extraído (de los cuales hay ~ 4400). Parece que no hace nada cuando su ciclo de reintento se da por vencido, lo que explicaría por qué la falla es completamente silenciosa.
Supongo que debe cambiar la forma en que espera a que estén "listos" o debe extraerlos directamente al lugar correcto.
Si está detrás de un firewall empresarial con un proxy que requiere autenticación, es posible que deba usar esta solución aquí para copiar la carpeta npm manualmente: https://geektalk.tech/2019/05/29/nvm-is-a-life-saver-when -you-want-to-work-with-multiple-version-of-node-js / , como @NShulzHenko ya mencionó aquí: https://gitter.im/coreybutler/nvm-windows?at=5e137763e409da486cd5aba1
Después de eso, se recomienda configurar un proxy en npm, como se describe aquí
npm config set https-proxy y npm config set proxy o aquí
Si tiene que autenticarse en el proxy, es posible que esto aún no sea suficiente, entonces es posible que deba instalar un proxy local que también admita proporcionar tokens de autenticación como px y configurar su proxy en npm a un puerto local, por ejemplo, http: //172.0 .0.1 : 3128
Golpea el mismo problema hoy. Lo intenté varias veces: también ejecutó el cmder como administrador, use el directorio sin espacio para NVM, pero no ayudó.
C:\Development
λ nvm use 14.8
14.8.0
Now using node v14.8.0 (64-bit)
C:\Development
λ node -v
v14.8.0
C:\Development
λ npm -v
internal/modules/cjs/loader.js:1083
throw err;
^
Error: Cannot find module 'C:\DevTools\nodejs\node_modules\npm\bin\npm-cli.js'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1080:15)
at Function.Module._load (internal/modules/cjs/loader.js:923:27)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
at internal/main/run_main_module.js:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
internal/modules/cjs/loader.js:1083
throw err;
^
Error: Cannot find module 'C:\DevTools\nodejs\node_modules\npm\bin\npm-cli.js'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1080:15)
at Function.Module._load (internal/modules/cjs/loader.js:923:27)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
at internal/main/run_main_module.js:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
C:\Development
@rkschamer gracias, me trajiste por el camino correcto.
En mi máquina, C:\Users\<usernname>\AppData\Roaming\nvm
tenía una carpeta temporal que contenía muchos archivos zip npm zip, pero no pude extraerlos porque estaban dañados de alguna manera.
Pude resolverlo desinstalando todas las versiones y también eliminando la carpeta temporal con los archivos zip. Luego comencé a instalar las versiones deseadas nuevamente.
Para reiterar, la solución es deshabilitar el escaneo AV durante la instalación.
Una solución real requiere una mejor solución al retraso de descompresión de Windows.
Comentario más útil
Sigue teniendo el mismo problema.
Todavía no he visto 1.1.8 después de un año @coreybutler