¿Cómo instalo un módulo globalmente usando npm?

Resuelto Cristian asked hace 13 años • 9 respuestas

Recientemente instalé Node.js y el módulo npm en OSX y creo que tengo un problema con la configuración:

npm install [MODULE] is not installing the node.js module to the default path 
which is /usr/local/lib/node_modules.
Cristian avatar Apr 28 '11 18:04 Cristian
Aceptado

Si desea instalar un módulo npm globalmente, asegúrese de usar el nuevo -gindicador, por ejemplo:

npm install forever -g

Las recomendaciones generales sobre la instalación del módulo npm desde 1.0rc (tomada de blog.nodejs.org ):

  • Si está instalando algo que desea usar en su programa, usando require('lo que sea'), instálelo localmente , en la raíz de su proyecto.
  • Si está instalando algo que desea usar en su shell, en la línea de comando o algo así, instálelo globalmente , de modo que sus archivos binarios terminen en su variable de entorno PATH.

Recientemente utilicé estas recomendaciones y se aplicaron bastante bien. Instalé para siempre globalmente (ya que es una herramienta de línea de comandos) y todos los módulos de mi aplicación localmente.

Sin embargo, si desea utilizar algunos módulos globalmente (es decir, express o mongodb), siga este consejo (también tomado de blog.nodejs.org ):

Por supuesto, hay algunos casos en los que querrás hacer ambas cosas. Coffee-script y Express son buenos ejemplos de aplicaciones que tienen una interfaz de línea de comandos, además de una biblioteca. En esos casos, puede hacer una de las siguientes cosas:

  • Instálelo en ambos lugares . En serio, ¿tienes tan poco espacio en disco? Está bien, de verdad. Son pequeños programas de JavaScript.
  • Instálelo globalmente y luego npm link coffee-script o npm link express (si está en una plataforma que admite enlaces simbólicos). Luego solo necesita actualizar la copia global para actualizar también todos los enlaces simbólicos.

La primera opción es la mejor en mi opinión. Sencillo, claro, explícito. El segundo es realmente útil si vas a reutilizar la misma biblioteca en varios proyectos diferentes. (Más información sobre el enlace npm en una entrega futura).

No probé ninguna de esas variaciones, pero parecen ser bastante sencillas.

schaermu avatar Apr 29 '2011 09:04 schaermu

En una Mac, encontré que el resultado contenía la información que estaba buscando:

$> npm install -g karma
...
...
> ws@0.4.25 install /usr/local/share/npm/lib/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)
...
$> ls /usr/local/share/npm/bin
karma nf

Después de agregar /usr/local/share/npm/bina la export PATHlínea en mi .bash_profile, guardarla y sourceeditarla, pude ejecutar

$> karma --help

normalmente.

yurisich avatar May 19 '2013 14:05 yurisich