Estoy aprendiendo nodejs en este momento en Windows. Varios módulos se instalan globalmente con npm.cmd, y nodejs no pudo encontrar los módulos instalados. Toma jade por ejemplo,
npm install jade -g
Jade está instalado en el directorio "C:\Program Files (x86)\nodejs\node_modules", pero el siguiente código fallará con un "Cannot find module 'jade'"error,
var jade = require('jade');
Sin embargo, el código se ejecutará con éxito cuando jade esté instalado localmente (sin la opción -g en npm). No quiero usar módulos instalados localmente, es una pérdida de espacio en disco para mí. ¿Cómo puedo hacer que los módulos instalados globalmente funcionen en Windows?

Respuestas:
Agregue una variable de entorno llamada
NODE_PATHy configúrela en%USERPROFILE%\Application Data\npm\node_modules(Windows XP),%AppData%\npm\node_modules(Windows 7/8/10), o donde npm termine instalando los módulos en su versión de Windows. Para hacerlo de una vez por todas, agregue esto como una variable del Sistema en la pestaña Avanzado del cuadro de diálogo Propiedades del sistema (ejecutarcontrol.exe sysdm.cpl,System,3).La solución rápida en Windows 7+ es simplemente ejecutar:
Vale la pena mencionar que
NODE_PATHsolo se usa al importar módulos en aplicaciones Node. Cuando desee utilizar los binarios de módulos instalados globalmente en su CLI, debe agregarlos también a suPATH, pero sinnode_modulesparte (por ejemplo,%AppData%\npmen Windows 7/8/10).Vieja historia
Soy bastante nuevo en node.js, así que no puedo estar completamente en lo cierto, pero desde mi experiencia funciona de esta manera:
Vea una pregunta similar para obtener más detalles: ¿Cómo instalo un módulo globalmente usando npm?
fuente
set NODE_PATH=C:\Documents and Settings\DevUser\Application Data\npm\node_modules, y funciona como se esperaba. Es extraño que los módulos instalados globalmente se coloquen en '% USERPROFILE% \ Application Data \ npm \ node_modules' en Windows, mientras tanto, no puede haber comillas en NODE_PATH.C:\Program Files\nodejs\node_modules\npm\node_modulesqué no tengo el módulo que acabo de instalar usandonpm install -g expressy estaba disponible enC:\Documents and Settings\swapnil\Application Data\npm\node_modules%USERPROFILE%\AppData\Roaming\npm\node_modulesnpm list -g. La primera línea de salida será el padre del directorio global node_modules; en otras palabras, el directorio global node_modules es{output}\node_modules. También imprime el directorio de instalación cuando ejecutanpm install --global {xyz}si está en la plataforma windows7, tal vez debería cambiar el NODE_PATH de esta manera:
%AppData%\npm\node_modulesfuente
Sé que puedo despertar a un zombie, pero creo que esto sigue siendo un problema, si necesita acceso global a los módulos de nodo en Windows 7, debe agregar esto a su ruta de variable global:
Importante: solo esto sin la
node_modulesparte, me tomó media hora para ver esto.fuente
node_modulespieza, ¡estaba luchando con esto también!Para que funcione en Windows 10, lo resolví agregando la carpeta
%USERPROFILE%\AppData\Roaming\npma mi RUTA. Después de haber\node_modulesagregado esto:%USERPROFILE%\AppData\Roaming\npm\node_modules\no funcionó para mí.fuente
pathentorno variabele, luego podemos ejecutarlo directamente en Windows 10Solo citaré de la publicación de blog de este nodo ...
fuente
They’re tiny JavaScript programs.¡Algunas de estas bibliotecas ciertamente no son pequeñas!Para abreviar, utilícelo
npm link jadeen el directorio de su aplicación.fuente
npm link jadeque no puede funcionar en Windows, npm devuelve un mensaje de error de la siguiente manera:npm ERR! Error: npm link not supported on windowsnpm linkdesde una ventana de comandos del Administrador.Intenté agregar / editar variables de entorno y llegar a la conclusión de que:
User variables(del cuadro superior) en lugar deSystem variables(de la parte inferior); de lo contrario, debe "ejecutarlo como administrador" para que funcione.;%AppData%\npmaPathpara usarlo como una herramienta de línea de comando (si es compatible, comojshintygrunt-cli).NODE_PATHy configurarlo%AppData%\npm\node_modulescon el fin derequire('<pkg_name>')en secuencias de comandos sin instalarlo en el directorio del proyecto. (Peronpm linkse sugiere para este requisito si está trabajando en un sistema operativomklinkcomo Vista y más nuevos).Entorno de prueba:
fuente
Tuve un tiempo terrible haciendo funcionar los módulos globales. Finalmente, agregué explícitamente
C:\Users\yourusername\AppData\Roaming\npma la variable PATH en Variables del sistema. También necesitaba que esta variable apareciera antes que la variable de ruta nodejs en la lista.Estoy ejecutando Windows 10.
fuente
Me encontré con este problema en Windows 7, ejecutando
como administrador mientras está conectado como usuario normal.
Solución: Al ejecutar la misma instalación que el usuario normal (no "ejecutar como administrador" para cmd) todo estaba bien. Supongo que está relacionado con la ruta de instalación y búsqueda predeterminada.
fuente
Desde mi experiencia con win8.1 npm instala módulos
C:\Users\[UserName]\AppData\Roaming\npm\node_modulespero los busca volcadamenteC:\Users\[UserName]\node_modules.Un módulo de referencia de solución simple en la aplicación por ruta completa:
fuente
Para Windows, todo el mundo dijo que debería establecer variables de entorno para los módulos nodejs y npm, pero ¿sabe por qué? Para algunos módulos, tienen una herramienta de línea de comandos, después de instalar el módulo, hay un archivo [module] .cmd en C: \ Archivos de programa \ nodejs , y se usa para iniciar en el comando de ventana. Entonces, si no agrega la ruta que contiene el archivo cmd a las variables de entorno % PATH% , no las iniciará con éxito a través de la ventana de comandos.
fuente
Tuve el mismo problema al intentar instalar Bower con
npm install -g bowerCreo que esto se debió a que otro usuario , no yo, instaló el nodo .
Desinstalé el nodo y luego lo reinstalé. Durante la instalación, vi este texto para la opción Agregar a RUTA> módulos npm :
Mensaje en la instalación del nodo
Después de la instalación del nodo, ejecuté
npm install -g bowernuevamente. Y ahora la glorieta funciona.Claro que no es necesario reinstalar el nodo con un usuario propio, como yo. La solución debe ser a través de las variables NODE_PATH o PATH , como han explicado otros usuarios.
Esto es solo para observar que este problema ocurre solo si el nodo ha sido instalado por otro usuario (o si durante la instalación la opción Agregar a RUTA> módulos npm no ha sido marcada).
fuente
Para mí trabajé en Windows 10
npm config set prefix %AppData%\npm\node_modulesfuente
Alternativamente, puede agregar al prefijo
~/.npmrcderecho . Tengo para 64 Win7.C:\Program Files\nodejsfuente
Me topé con esta pregunta porque quiero usar node.js con Visual Studio 2015 en mi nueva computadora con Windows 10. Utilicé node.js en Windows 7 y 8 y 8.1 Nunca un problema node.js encuentra un módulo. Utilizo un node.js 0.10.39 heredado porque tengo que usar esta versión debido al módulo serial y RFXCOM.
La respuesta para Windows 10 es establecer NODE_PATH en las variables de entorno con C: \ Users \ User \ node_modules.
fuente
C:\Users\User\node_modulesVeo algunos módulos enC:\Users\User\AppData\Roaming\npm\node_modulesVeo algunos módulos enC:\Users\User\node_modulesTambién se encuentra enC:\Program Files (x86)\nodejs\node_modules\npm\node_modulesNo estoy seguro de cómo sucede esto. ¿Cuál es cuál y por qué lo hicieron así?Para Windows 10, tuve que instalar localmente gulp en la carpeta:
C: \ Users \ myaccount \ AppData \ Roaming \ npm \ node_modules
Esto solucionó mi problema de "no se reconoce el trago"
fuente
Simplemente descargue y vuelva a instalar el nodo desde este y esto solucionará todos los problemas de ruta.
No olvide reiniciar su símbolo del sistema o terminal.
fuente
Todas las respuestas anteriores no funcionaron para mí. Lo único que finalmente funcionó fue agregar el% AppData% \ npm a la variable Path del entorno, Y eliminar los dos archivos ng en C: \ Archivos de programa \ nodejs.
Los paquetes ng no se instalaron en C: \ Archivos de programa \ nodejs \ node_modules, por lo que era evidente que usar el binario ng del directorio nodejs no funcionaría.
No estoy seguro de por qué buscó en este directorio, porque ya configuré - variable de entorno PATH - .npmrc en C: \ Users \ MyUser - Intenté agregar variables del sistema y / o NODE_PATH
fuente
Si está utilizando Windows, toma algunos pasos, 1) crear un archivo llamado package.json
donde hola es el nombre del paquete y * significa la última versión de su dependencia
2) codifique el directorio de su proyecto y ejecute el siguiente comando
npm install
Instala las dependencias.
fuente