Question

Module I Node.js et NPM récemment installé sur Mac OS X et ont un problème avec les paramètres que je pense:

npm install [MODULE] is not installing the node.js module to the default path 
which is /usr/local/lib/node_modules.
Était-ce utile?

La solution

Si vous voulez installer un module NPM globalement, assurez-vous d'utiliser le nouveau drapeau -g, par exemple:

npm install forever -g

Les recommandations générales concernant l'installation du module NPM depuis 1.0rc (prise blog.nodejs.org ):

  • Si vous installez quelque chose que vous voulez utiliser dans votre programme, en utilisant exiger ( 'tout'), puis l'installer localement , à la racine de votre projet.
  • Si vous installez quelque chose que vous voulez utiliser dans votre coquille, sur la ligne de commande ou quelque chose, Installer elle globalement , de sorte que ses binaires finir dans votre environnement PATH variable.

Je viens récemment utilisé ces recommandations et il est descendu assez bien. Je l'ai installé pour toujours dans le monde (car il est un outil de ligne de commande) et tous mes modules d'application localement.

Cependant, si vous souhaitez utiliser des modules globalement (c.-à-exprimer ou MongoDB), prenez ce conseil (également pris blog.nodejs.org ):

Bien sûr, il y a des cas où vous voulez faire les deux. -Script Café et Exprimez les deux sont de bons exemples d'applications qui ont une interface de ligne de commande, que ainsi qu'une bibliothèque. Dans ces cas, vous peut faire une des opérations suivantes:

  • Installer dans les deux endroits . Sérieusement, êtes-vous que court sur le disque espace? Il est très bien, vraiment. Ils sont minuscules programmes JavaScript.
  • Installez globalement, puis coffeescript lien NPM ou express lien NPM (Si vous êtes sur une plate-forme de soutien liens symboliques.) Ensuite, vous ne devez mettre à jour la copie globale de mettre à jour tous les les liens symboliques aussi bien.

La première option est le meilleur dans mon opinion. Simple, clair, explicite. le seconde est vraiment pratique si vous êtes va réutiliser la même bibliothèque dans un tas de différents projets. (Plus sur lien NPM dans une tranche future.)

Je n'ai pas testé l'un de ces variations, mais ils semblent être assez simple.

Autres conseils

Sur un Mac, je trouve la sortie contenait les informations que je cherchais:

$> 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

Après avoir ajouté /usr/local/share/npm/bin à la ligne de export PATH dans mon .bash_profile, l'enregistrer et sourceing, j'ai été en mesure d'exécuter

$> karma --help

normalement.

Je aime utiliser un fichier package.json dans la racine de votre dossier app.

Voici une utilisation I

nvm use v0.6.4

http://pastie.org/3232212

npm install

J'ai eu des problèmes pour installer Express sur Ubuntu:

Si pour une raison quelconque commande NPM est manquante, le test commande NPM avec npm help. Sinon là, procédez comme suit - http: / /arnolog.net/post/8424207595/installing-node-js-npm-express-mongoose-on-ubuntu

Si seulement la commande Express ne fonctionne pas, essayez:

sudo npm install -g express

Ce tout fait le travail que je suis habitué avec Windows7 et OSX.

Hope this helps!

Dans Ubuntu, chemin ensemble de node_modules .bashrc fichier

export PATH = "/ home / nom d'utilisateur / node_modules / .bin: $ PATH"

Vous ne disposez pas des autorisations d'écriture pour installer un module de nœud dans l'emplacement global comme /usr/local/lib/node_modules, dans lequel l'exécution cas NPM package d'installation -g en tant que root.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top