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_PATH
y 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_PATH
solo 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_modules
parte (por ejemplo,%AppData%\npm
en 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_modules
qué no tengo el módulo que acabo de instalar usandonpm install -g express
y estaba disponible enC:\Documents and Settings\swapnil\Application Data\npm\node_modules
%USERPROFILE%\AppData\Roaming\npm\node_modules
npm 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_modules
fuente
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_modules
parte, me tomó media hora para ver esto.fuente
node_modules
pieza, ¡estaba luchando con esto también!Para que funcione en Windows 10, lo resolví agregando la carpeta
%USERPROFILE%\AppData\Roaming\npm
a mi RUTA. Después de haber\node_modules
agregado esto:%USERPROFILE%\AppData\Roaming\npm\node_modules\
no funcionó para mí.fuente
path
entorno 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 jade
en el directorio de su aplicación.fuente
npm link jade
que no puede funcionar en Windows, npm devuelve un mensaje de error de la siguiente manera:npm ERR! Error: npm link not supported on windows
npm link
desde 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%\npm
aPath
para usarlo como una herramienta de línea de comando (si es compatible, comojshint
ygrunt-cli
).NODE_PATH
y configurarlo%AppData%\npm\node_modules
con el fin derequire('<pkg_name>')
en secuencias de comandos sin instalarlo en el directorio del proyecto. (Peronpm link
se sugiere para este requisito si está trabajando en un sistema operativomklink
como 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\npm
a 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_modules
pero 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 bower
Creo 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 bower
nuevamente. 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_modules
fuente
Alternativamente, puede agregar al prefijo
~/.npmrc
derecho . Tengo para 64 Win7.C:\Program Files\nodejs
fuente
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_modules
Veo algunos módulos enC:\Users\User\AppData\Roaming\npm\node_modules
Veo algunos módulos enC:\Users\User\node_modules
También se encuentra enC:\Program Files (x86)\nodejs\node_modules\npm\node_modules
No 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