node.js tutorial Grunt auf Windows 8: 'grunt' wird nicht erkannt




npm gruntfile (9)

Ich hatte das gleiche Problem auf Windows 8

Ich habe '% APPDATA% \ npm' zur Pfadvariablen hinzugefügt. Es hat gut funktioniert.

Ich habe ein Problem beim Ausführen von Grunt über die Befehlszeile auf meinem Windows 8-Computer.

Meine Forschung zeigt, dass die gebräuchlichste Lösung die Installation von grunt-cli ist, da Grunt nicht mehr global ist. Ich muss auch sicherstellen, dass ich tatsächlich den Grunt-Task-Runner installiere, da dieser nicht mit grunt-cli installiert ist.

Andere Lösungen verweisen auf die PATH-Systemumgebungsvariable, aber diese scheint so ausgerichtet zu sein, wie ich es erwarten würde:

C: \ Benutzer [Benutzername] \ AppData \ Roaming \ npm

Nachdem ich das alles gemacht habe, bekomme ich immer noch eine "Grunt 'wird nicht als interne oder externe Befehl, lauffähiges Programm oder Batch-Datei" -Fehlermeldung in der CLI erkannt. Ich habe die folgenden Dinge ausprobiert und alles nach jedem Versuch deinstalliert:

  • Installiere grunt-cli global (npm install -g grunt-cli), grunze dann auf der Verzeichnisebene, die ich benutzen will (npm install grunt)
  • Das gleiche wie oben, aber mit umgekehrter Reihenfolge der Installation
  • Das Gleiche wie bei beiden oben, aber mit der Admin-Eingabeaufforderung

Fehle ich etwas Offensichtliches?


Ich hatte keine Probleme mit Grunt auf mehreren verschiedenen Windows 8 Maschinen.

Wenn Sie den Ordner öffnen: C:\Users\[username]\AppData\Roaming\npm

Haben Sie eine Datei namens grunt.cmd in diesem Ordner?

Wenn nicht, würde ich vielleicht versuchen, npm install -g grunt-cli , vielleicht von einer erhöhten Eingabeaufforderung.

Wenn dies der C:\Users\[username]\AppData\Roaming\npm und Sie C:\Users\[username]\AppData\Roaming\npm in Ihrer PATH-Umgebungsvariablen haben, sollte die Eingabe von grunt an einer Eingabeaufforderung funktionieren.

Dumme Frage, haben Sie versucht, die Eingabeaufforderung zu schließen und eine neue zu öffnen?


  1. Schließen Sie alle Eingabeaufforderungsinstanzen.
  2. Starten Sie eine neue Eingabeaufforderungsinstanz.
  3. Type PATH Geben Sie ein und überprüfen Sie, ob C:\Users\Username\AppData\Roaming\npm Teil des Pfades ist.
  4. Wenn nicht, müssen Sie sich aus- und wieder anmelden ,
    oder schließen Sie die Eingabeaufforderung und starten Sie den explorer Prozess neu.
  5. Geben Sie in der Eingabeaufforderung where grunt Enter ein .
    Du bist gut, wenn es berichtet:

    C:\Users\Username\AppData\Roaming\npm\grunt
    C:\Users\Username\AppData\Roaming\npm\grunt.cmd
    
  6. Andernfalls müssen Sie das Paket grunt-cli installieren, wenn es grunt-cli meldet:

    INFO: Could not find files for the given pattern(s).
    

Anscheinend müssen Programme, die die Umgebungsvariable PATH ändern, eine WM_SETTINGCHANGE Nachricht WM_SETTINGCHANGE . Das Windows-Fenster Systemeinstellungen führt es korrekt aus, wenn Sie die PATH Variable ändern, das NPM-Installationsprogramm jedoch nicht. Deshalb müssen Sie den Explorer neu starten (oder sich abmelden oder neu starten, was den gleichen Effekt hat).


Bestätigen Sie, dass Ihr PATH korrekt ist (und nicht vermasselt). PATH einfach PATH an der Eingabeaufforderung ein. Es gibt wirklich keine andere Erklärung, die angesichts des Fehlers, den Sie beschreiben, und der Schritte, die Sie unternommen haben, sinnvoll ist.

Normalerweise hätte der Befehl where grunt in Ihrem Pfad grunt.cmd gefunden, wenn npm korrekt installiert und dem grunt.cmd ordnungsgemäß hinzugefügt wurde.


Lauf einfach:

npm install -g grunt-cli

Manchmal korrumpiert die NPM-Installation den grundlegenden Windows-Pfad. Ich habe normalerweise eine Kopie meiner eigenen Version von PATH separat gespeichert. Jede Woche oder bei einigen Installationen konfiguriere und aktualisiere ich die Variable% PATH% manuell.

Grundsätzlich ist Grunt.cmd nicht über% PATH% Variable verfügbar.


Das gleiche passiert mir und hier war die Lösung: Hast du 2 verschiedene Versionen von Node.JS installiert? Vielleicht Nodist? Das bedeutet, dass NPM wahrscheinlich zweimal installiert wurde und die Befehle in zwei verschiedenen Ordnern installiert werden: Einmal in C:\Users\<user>\AppData\Roaming\npm und einmal in C:\dev\nodist\bin\bin .

C:\dev\nodist\bin\bin war nicht auf meiner C:\dev\nodist\bin\bin , also fügte ich sie hinzu und entfernte die Node.JS-Version, die ich nicht verwenden wollte.


Ich habe mit Problem auf Windows 8, dass nach der Installation Grunt-CLI Ich habe immer "Befehl nicht gefunden", während ich versucht zu überprüfen, grunt -v oder where grunt . Also habe ich den Pfad C:\Program Files (x86)\Git\local enviroment PATH hinzugefügt und starte grunt.cmd von diesem Ordner aus (hier musst du im Ordner node_modules nachsehen). Und nachdem ich mein Terminal neu geladen hatte, fing alles an zu arbeiten.


Ich hatte das gleiche Problem.

Ich habe verschiedene Dinge ausprobiert:

  • Starte den Computer neu
  • Löschte den Grunt-Ordner und rannte

npm install -g grunt -cli

Hat nicht funktioniert.

Endlich versucht:

npm installieren -g grunt-cli

Arbeitete perfekt.

Versucht

wo grunzen

und ich sah 2 Orte, wo es gefunden wurde.





grunt-cli