2013-05-01 13 views
5

On Ubuntu, wenn ich installieren ein Modul wie:Shell-Befehle von Knotenmodulen nicht in Pfad auf Mac OSX

npm install nodemon -g 

I den Befehl nodemon im $path

auf Mac OSX haben, nodemon ist nicht in $path ...

Irgendwelche Hinweise?

UPDATE: es gibt nichts /usr/local/bin, ich habe auch versucht, das gleiche Ergebnis mit npm install nodemon -g

Antwort

6

Versuchen Sie es global installieren:

sudo npm install nodemon -g 

Wenn das auch nicht funktioniert, fügen Sie /usr/local/bin zu Ihrem $PATH.

+0

Dank, habe ich zunächst die Option -g verwenden, ... gleichen Ergebnisse (kein Befehl in Pfad) –

+0

Könnten Sie die Ausgabe von 'sudo npm install nodemon -g 'posten? Was sagt 'npm prefix -g'? – robertklep

+0

sudo npm install nodemon -g npm http ERHALTEN https://registry.npmjs.org/nodemon npm http 304 https://registry.npmjs.org/nodemon /usr/lokal/share/npm/bin/nodemon -> /usr/local/share/npm/lib/node_modules/nodemon/nodemon.js [email protected]/usr/local/share/npm/lib/knotenmodule/nodemon –

0

haben Sie Ihren Terminalpfad seit der Installation aktualisiert? Versuchen Sie, das Terminal zu schließen und erneut zu öffnen. Verwenden Sie nvm (Knotenversionsmanager)? Wenn dies der Fall sein wird die Binär-Dateien in so etwas wie

Users/maxl/.nvm/v0.10.4/bin 

Was ist die Ausgabe von

echo $PATH 
+0

Echo $ PATH /usr/bin:/bin:/usr/sbin:/sbin :/usr/local/bin –

+0

neues Terminal hatte keine Wirkung ... –

3

ich das gleiche Problem auf meinem Mac hatte. Ich konnte dies lösen, indem ich global installiere (kein sudo erforderlich) und dann /usr/local/share/npm/bin zu meinem Pfad hinzufüge. Es ist einfach, dies in Ihr Bash-Profil einzufügen, damit es beim Start hinzugefügt wird. Zuerst, vim ~/.bash_profile, dann:

export PATH=${PATH}:/usr/local/share/npm/bin 

Dann funktioniert alles wie erwartet.

Übrigens, wenn ich $ PATH zurückmelde, ist/usr/local/bin da, also muss es ein Problem sein, wie npm auf Mac funktioniert (das heißt, der globale Installationsort ist für Mac anders als Linux).

0

Ich war für eine Weile auf diesem fest. Dann entdeckte ich, dass das Projekt, an dem ich arbeitete, einen eigenen RVM-Edelstein hatte. Das Knotenmodul, das ich installieren wollte, war npm install -g grunt-contrib-compass.

Das Ergebnis war, dass, wenn ich ein neues Terminalfenster öffnete und lief which compass Ich würde den Weg sehen, großartig! Aber nach einer CD zu meinem Projektverzeichnis wäre der Pfad weg ??? Es stellt sich heraus, dass NPM Edelsteine ​​in RVMs (Standard) gemset installiert! Ich habe versucht, ohne die -g-Flagge und kein Glück zu installieren.

Meine Lösung war eine schnelle rvm --force gemset delete appname und nur die Standardeinstellung für das Projekt verwendet. Wahrscheinlich nicht ideal, aber es hat funktioniert. Ich hoffe, dieser Hinweis hilft anderen.

0

Am Ende, was für mich gearbeitet wurde NVM verwenden, und dann tun:

nvm install stable 
nvm use stable 
nvm alias default stable 

Ich erkennen, dass npm config get prefix nach dem Laufen und zu sehen, es war nicht korrekt.

1

Wenn Sie Fisch-Shell verwenden, und installiert Knoten über homebrew, fügen Sie diese ~/.config/fish/config.fish

set PATH /usr/local/Cellar/node/6.6.0/bin/ $PATH