grunzen: Befehl beim Ausführen vom Terminal nicht gefunden

100

Ich bin neu bei Grunt. Ich versuche, Grunt auf meinem Mac OSX Lion zu konfigurieren.

Ich habe die Anweisungen hier befolgt und dann einen Projektordner erstellt, der die folgenden Dateien enthält. Wenn ich versuche zu rennen, indem ich "grunzen" in das Terminal tippe, bekomme ich command not found. Ich habe auch meine Pfade geändert, sudo nano /etc/pathsin der Hoffnung, dass der Task-Runner durch Hinzufügen des Pfads funktioniert, aber es funktioniert immer noch nicht. Kann mir bitte jemand dabei helfen?

---paths

/usr/bin 
/bin
/usr/sbin
/sbin
/usr/local/bin
/usr/local/bin/grunt


--- files
node modules
Gruntfile.js
package.json
user686483
quelle
Führen Sie diesen Befehl vom Terminal aus und fügen Sie die Ausgabe zu Ihrer Frage hinzu: Welches Grunzen
Paul Allen
Hallo Paul, ich habe den Befehl eingegeben und überhaupt keine Ausgabe erhalten.
user686483
Mögliches Duplikat von "Befehl nicht gefunden" nach der Installation
Sindre Sorhus
1
Dupe von stackoverflow.com/questions/10667381/… - tolle Antwort dort.
Luft

Antworten:

44

Ich vermute, Sie haben Brew zur Installation von Node verwendet, daher könnte die Anleitung hier hilfreich sein: http://madebyhoundstooth.com/blog/install-node-with-homebrew-on-os-x/ .

Sie müssen sicherstellen, dass sich das npm / bin wie beschrieben in Ihrem Pfad befindet export PATH="/usr/local/share/npm/bin:$PATH". Dies ist der Speicherort, an dem npm die Bin-Stubs für die installierten Pakete installiert.


Die Nano-Version funktioniert auch wie hier beschrieben http://architectryan.com/2012/10/02/add-to-the-path-on-mac-os-x-mountain-lion/, aber möglicherweise wird das Terminal neu gestartet erforderlich, um den neuen Pfad aufzunehmen.

nschonni
quelle
Kann ich dies mit sudo nano / etc / path hinzufügen?
user686483
2
Sieht aus wie es hier architektonisch.com/2012/10/02/… aber verwenden Sie /usr/local/share/npm/bineher als die, die /usr/local/bin/gruntSie in der Frage haben
nschonni
1
Ich habe den Pfad mit sudo nano / etc / path hinzugefügt, aber ich habe immer noch keine Grunzbefehle / usr / local / share / npm / bin
user686483
Wie komme ich zu diesem Ordner im Terminal?
user686483
Ich habe es geschafft, den Ordner mit Finder einzublenden. Mein npm-Ordner befindet sich unter / Users / myusername.
user686483
498

Mein Fix für dies auf Mountain Lion war: -

npm install -g grunt-cli 

Sah es auf http://gruntjs.com/getting-started

user2792249
quelle
15
Arbeitete an Mavericks.
Aaron Greenlee
8
Auch unter Linux (Ubuntu / Elementary OS)
iConnor
4
Sollte gut funktionieren (und ist wahrscheinlich besser) ohne die sudo.
Matthew Shanley
2
@MatthewShanley sudowird benötigt, es sei denn, bei der Installation wurden entsprechende Ordnerberechtigungen festgelegt npm.
Mostruash
3
Wenn Sie dies benötigen sudo, sind die Berechtigungen falsch und Sie werden bei jeder Installation in größere Schwierigkeiten geraten. Stellen Sie immer sicher, dass Sie npmohne laufen können sudo.
Laurens Kling
12

Für Windows

npm install -g grunt-cli

npm install load-grunt-tasks

Dann renne

grunt

Mohit Singh
quelle
1
hat mir überhaupt nicht geholfen
Dejell
1
Ich verwende Windows 10 und musste nur 'npm install -g grunt-cli' ausführen
Dan
6

Ich habe eine Weile herumgesucht, um dieses Problem zu lösen, und keines der vorgeschlagenen Updates für Bash schien zu funktionieren. Was ich entdeckte, war, dass meine npm-Wurzel irgendwann so geändert wurde, dass sie auf eine Users/USER_NAME/.node/node_modulesWeile hinwies, in der die eigentliche Installation von npm lebte /usr/local/lib/node_modules. Sie können dies überprüfen, indem Sie npm rootund npm root -g(für die globale Installation) ausführen. Um den Pfad zu korrigieren, können Sie aufrufen npm config set prefix /usr/local.

Bueno
quelle
Ich bin nicht in der Lage, die beiden Pfade mit der von Ihnen bereitgestellten Lösung zu synchronisieren
comiventor
6

Auch unter OS X (El Capitan) hatte ich den ganzen Morgen das gleiche Problem.

Ich habe den Befehl "npm install -g grunt-cli" in einem Verzeichnis ausgeführt, in dem sich mein Projekt befand.

Ich habe es erneut aus meinem Home-Verzeichnis (dh 'cd ~') versucht und es wurde wie zuvor installiert, außer dass ich jetzt den Befehl grunt ausführen kann und er erkannt wird.

Mongo0se
quelle
5

Der entscheidende Punkt ist, den richtigen Weg zu finden, auf dem Ihr Grunzen installiert wurde. Ich habe Grunzen bis npm installiert, aber mein Grunzpfad war /Users/${whoyouare}/.npm-global/lib/node_modules/grunt/bin/grunt. Also, nachdem ich /Users/${whoyouare}/.npm-global/lib/node_modules/grunt/binzu ~/.bash_profileund hinzugefügt hatte source ~/.bash_profile, funktionierte es.

Die Schritte sind also wie folgt:

1. find the path where your grunt was installed(when you installed grunt, it told you. if you don't remember, you can install it one more time)

2. vi ~/.bash_profile

3. export PATH=$PATH:/your/path/where/grunt/was/installed

4. source ~/.bash_profile

Sie können auf http://www.hongkiat.com/blog/grunt-command-not-found/ verweisen.

YJ. Yang
quelle
Tolle Antwort, hat bei mir funktioniert (Win7 x64). Dies ist, was ich in mein .bash_profile gelegt habe:export PATH=$PATH:/Users/<username>/AppData/Roaming/npm/node_modules/grunt-cli/bin/grunt
Silber
Überprüfen Sie auch ~/.npm-packages/lib/node_modules/grunt-cli/bin/grunt(OS X High Sierra)
Kubilay