Der Begriff 'ng' wird nicht als Name eines Cmdlets erkannt

93

Während ich heute ein grundlegendes AngularJS-Intro durcharbeitete, stieß ich auf ein Problem.

Ich habe PowerShell geöffnet, um mit dem Projekt zu beginnen. NPM hat funktioniert.

Ich konnte den Angular installieren mit:

npm install -g @angular/cli

Jedes Mal, wenn ich versuchte, ng auszuführen, bekam ich:

the term 'ng' is not recognized as the name of a cmdlet
Wauna
quelle
1
Mach es im " Als Administrator
ausführen
Ich habe hier alles ohne Erfolg versucht. Ich musste auch rennen npm install -g @angular/cliund dann hat es funktioniert.
Jnr

Antworten:

115

Der erste Pfad in der Pfadvariablen muss der NPM-Pfad sein. Beim Öffnen der Eingabeaufforderung Node.js stellte ich fest, dass der Befehl ng dort funktioniert. Ich habe mich in die Verknüpfung eingegraben und festgestellt, dass sie auf einen Befehl verweist, um sicherzustellen, dass die erste Pfadvariable NPM ist. Reparieren:

  1. Rechtsklick auf Arbeitsplatz (Fenster)
  2. Ausgewählte erweiterte Systemeinstellungen
  3. Klicken Sie auf "Umgebungsvariablen"
  4. Unter der Variablen "Pfad" wurde der ERSTE Wert aufgelistet %AppData%\npm

Sobald ich das getan hatte, konnte ich Powershell schließen und wieder öffnen und alles funktionierte.

jonrsharpe
quelle
Nachdem Sie die obigen Schritte ausgeführt haben, funktioniert "ng -v", aber "ng build" funktioniert nicht. Es gibt diesen Fehler "Sie scheinen nicht von" @ angle / core "abhängig zu sein. Dies ist ein Fehler."
PSR
1
Sie können all dies in vielen Fällen auch überspringen, indem Sie einfach "npm run ng ...." eingeben. Npm funktioniert normalerweise immer noch ohne Änderung in Powershell. Mit "npm run" können Sie ng-Befehle verwenden.
SmoveBB
Es hat bei mir funktioniert. Ich möchte nur verstehen, warum wir diesen Fehler erhalten, nachdem wir nodejs installiert haben, das sich bereits im Pfad befindet.
Saroj Kumar Sahoo
77

Richten Sie zuerst Node.js ein, wechseln Sie dann mit der Eingabeaufforderung wie D: \ project in Ihren Projektordner und führen Sie dann den folgenden Befehl aus:

npm install -g @angular/cli

Führen Sie nun den Befehl ng aus. Diese Arbeit für mich.

Ahmadreza Farrokhnejad
quelle
5
Das -gsteht für global. Wenn Sie global installieren, sollte es keine Rolle spielen, ob Sie sich in D: \ vs D: \ project befinden, wenn Sie diesen Befehl ausführen. Eine Warnung ist, dass dies möglicherweise nicht das ist, was Sie möchten, wenn Sie verschiedene Versionen von angle / cli für verschiedene Projekte verwenden möchten.
Mattliu
Dies ist sicherlich die richtige Antwort, wenn Angular / Cli nicht installiert ist
Caras
19

In den "Umgebungsvariablen"

Im Abschnitt "Systemvariablen"

In der Variablen "Pfad" und vor dem "C:\Program Files (x86)\nodejs\"Hinzufügen =>"%AppData%\npm"

A. Morel
quelle
1
Genau das, was benötigt wird. Vielen Dank
Md Faraz
Hat für mich gearbeitet. Danke. Hatte .npmrcDatei mit prefixals AppData-Pfad festgelegt.
Ananthapadmanabhan
12

Lösung für mich funktioniert:

Fügen Sie Ihrer Umgebungsvariablen einen Pfad hinzu

C:\Users\YourPcName\AppData\Roaming\npm

sowie Ihren bin-Ordner der eckigen Datei [präsentieren sich selbst]

C:\Users\YoutPcName\AppData\Roaming\npm\node_modules\angular-cli\bin

ng -v Wenn Sie es dann ausführen , wird in Ihrer Eingabeaufforderung eine eckige Benutzeroberfläche angezeigt. Hinweis npm i -g @angular/cliStarten Sie nach dem Ausführen die Eingabeaufforderung neu und überprüfen Sie, ob sie ansonsten funktioniert. Reinigen Sie den Cache und wiederholen Sie die obigen Schritte.

KRIPA SHANKAR JHA
quelle
Nach dem Ausführen von "ng install -g @ angle / cli" sollte ich die AppData auf Pfadvariable setzen müssen. Danke, jetzt kann ich reibungslos arbeiten.
Napster
Funktioniert für mich, schließen und neu gestartet VSCode
Hanz Cheah
7

Die globale Installation von Angular Cli hat mein Problem gelöst.

npm install -g @angular/cli
Rut Shah
quelle
3

Wenn Ihr Projektname '-' enthält. Entfernen Sie es und versuchen Sie es. Dies kann zu Problemen beim Ausführen von 'ng' führen.

Shambhu Yadav
quelle
3

Das Ändern der Richtlinie in "Uneingeschränkt" hat bei mir funktioniert:

Set-ExecutionPolicy Unrestricted -Scope CurrentUser
Rayan Albouni
quelle
2

Öffnen Bearbeiten Sie die Systemumgebungsvariablen

Fügen Sie in den Variablen "Pfad" und "PS-Modulpfad" "% AppData% \ npm" hinzu.

Führen Sie Visual Code als Administrator aus

Für mich geht das!

AleHulk
quelle
2

Sie müssen nur den Visual Studio-Code schließen und erneut starten. Damit der Befehl ng in vs code funktioniert, müssen Sie das Projekt zunächst mit cmd im Administratormodus kompilieren.

Ich hatte auch das gleiche Problem. Aber diese Methode hat es gelöst.

PrafulPravin
quelle
2

In allen Antworten geht es darum, wie das Problem behoben werden kann. Am besten laden Sie jedoch nodeJs herunter und lassen Sie das Installationsprogramm zur PATH-Variablen hinzufügen.

Version 12 und 13 sind zu neu, daher musste ich 11.15 https://nodejs.org/download/release/v11.15.0/ herunterladen.

rfcdejong
quelle
2

Ich habe folgendes verwendet:

npm run ng serve

Es hat bei mir funktioniert, ohne dass Umgebungsvariablen festgelegt werden mussten.

Ich musste danach ein Typoskript installieren:

npm install typescript@">=3.4 <3.6"
Arun Surawat
quelle
1

Öffnen Sie den eckigen App-Pfad in der Eingabeaufforderung (Als Administrator ausführen), anstatt im Visual Studio-Code-Terminal den Befehl "ng serve" zu geben.

Geben Sie dann den Befehl "ng serve".

Öffnen Sie dann den Browser und gehen Sie zu http: // localhost: 4200 /

Für mich geht das.

Anfänger Entwickler
quelle
1

Dieses Powershell-Skript hat die richtige Einstellung zu meiner Umgebungsvariablen "Pfad" hinzugefügt (als Benutzereinstellung). Es fügt Folgendes hinzu:% AppData% \ npm ... und startet dann die Befehlszeile neu, die "ng" verwendet.

   $existingPath = [System.Environment]::GetEnvironmentVariable("Path","User")      
   write-host "existing PATH variable is $existingPath"                                          
   $newPath = "%AppData%\npm;$existingPath"                                          
   write-host "new      PATH will be     $newPath"                                               

   # update here                                                                                      
   [System.Environment]::SetEnvironmentVariable("Path", $newPath, "User")           

   $finalPath = [System.Environment]::GetEnvironmentVariable("Path","User")         
   write-host "final    PATH variable is $finalPath"                                             
DavB.cs
quelle
Funktioniert wie beschrieben.
Koosk
1

Ich habe die folgenden Schritte ausgeführt

1. Klicken Sie mit der rechten Maustaste auf den Befehl Eingabeaufforderung. 2. Führen Sie ihn als Administrator aus. 3. Geben Sie npm install -g @ angle / cli ein

vidhya c
quelle
1
Sie sollten npm-Pakete nicht global installieren
Tarick Welling
@TarickWelling Bitte geben Sie ein Argument für Ihre Aussage an.
Jacob-Jan Mosselman
Warum existiert dann -g? Und wie soll man CLI-Tools ohne -g bekommen?
tpartee
1

1) Klicken Sie mit der rechten Maustaste auf den Arbeitsplatz (Fenster). 2) Ausgewählte erweiterte Systemeinstellungen. 3) Klicken Sie auf "Umgebungsvariablen". 4) Unter "Pfad" wurde der ERSTE Wert in% AppData% \ npm aufgeführt

Anfänglich : C: \ Programme \ Microsoft MPI \ Bin \;% SystemRoot% \ system32;% SystemRoot%;% SystemRoot% \ System32 \ Wbem;% SYSTEMROOT% \ System32 \ WindowsPowerShell \ v1.0 \; C: \ Programme \ TortoiseSVN \ bin;

Nach dem Hinzufügen des Pfads : C: \ Programme \ Microsoft MPI \ Bin \; % AppData% \ npm; % SystemRoot% \ system32;% SystemRoot%;% SystemRoot% \ System32 \ Wbem;% SYSTEMROOT% \ System32 \ WindowsPowerShell \ v1.0 \; C: \ Programme \ TortoiseSVN \ bin;

Eine weitere Sache, die Sie versuchen können, wenn immer noch ein Fehler auftritt, wie folgt: 1) Gehen Sie über die Eingabeaufforderung zum Projektspeicherort: C: \ Users \ brijeshray \ ParentChild> 2) Installieren oder aktualisieren Sie den vorhandenen Winkel wie folgt: npm install -g @ angle / cli @neueste

3) Gehen Sie zu Computer oder PC -> Eigenschaften -> Erweiterte Systemeinstellung -> Umgebungsvariable -> fügen Sie einen Pfad unter "Benutzervariable" hinzu (falls 'Pfad' nicht vorhanden ist) ==> C: \ Users \ brijeshray \ AppData \ Roaming \ npm -> Speichern Sie es und starten Sie den visuellen Code neuGeben Sie hier die Bildbeschreibung ein

Brijesh Ray
quelle
0

Ich habe npm (5.5.1) verwendet, um es auf die neueste Version zu aktualisieren. Mein Problem wurde behoben.

Nofi
quelle
0

Sie können auch sicherstellen, dass Sie die Eingabeaufforderung - oder das von Ihnen verwendete Terminal - als Administrator ausführen. Ich verwende Visual Studio Code und der ng serveBefehl gibt mir genau diesen Fehler, wenn VS Code nicht als Administrator ausgeführt wird.

dvlsc
quelle
0

Führen Sie Powershell oder die Eingabeaufforderung nicht als Administrator aus.

Dustydojo
quelle
0

Sie sollten den Knoten js auf die neueste Version aktualisieren. Andernfalls deinstallieren Sie den Knoten js und installieren Sie ihn erneut.

Deepa
quelle
0

Nachdem Sie den Pfad geändert haben, müssen Sie Powershell neu starten. Sie müssen Ihren Computer nicht neu starten.

Steve Scott
quelle
0

Das Problem ist weder die Installation des NPM noch der Pfad! Wenn Sie den Befehl "ng" verwenden möchten, müssen Sie den Winkel-CLI installieren. durch Ausführen des folgenden Befehls

npm install -g @angular/cli

https://cli.angular.io/

Suma Mandava
quelle
0

Basierend auf den obigen Antworten ist hier die Konsolidierung.

  1. Führen Sie den Befehl aus npm install -g @angular/cli@project_version
  2. Fügen Sie die folgenden Pfade zu Ihren Umgebungsvariablen hinzu -> Systemvariablen -> Pfad (für den Administratorzugriff erforderlich ist) .

    C: \ Benutzer \ YourPcAccountName \ AppData \ Roaming \ npm C: \ Benutzer \ YoutPcAccountName \ AppData \ Roaming \ npm \ Knotenmodule \ angle-cli \ bin Stellen Sie sicher, dass der erste Wert als aufgeführt ist %AppData%\npm

  3. Öffnen Sie die Eingabeaufforderung erneut in Ihrem Projektordner und führen Sie sie aus ng serve.
Sasikumar
quelle
0

Ich habe den Befehl 'ng serve' in der Eingabeaufforderung ausgeführt. Das Projekt wurde erfolgreich kompiliert. Alle im VS-Code gespeicherten Änderungen werden dann automatisch im Browser aktualisiert.

PS: Ich habe Angular global installiert.

Rohit Parab
quelle
0

Sie können auch den folgenden Befehl ausführen, um npm install -g @ angle / cli aufzulösen

Brijesh Ray
quelle
0

Fix: Das Ausführen von Skripten ist auf diesem System deaktiviert

Powershell öffnen

    Set-ExecutionPolicy RemoteSigned
    EIN

(A: JA ZU ALLEN)

Getan!

HaiNM
quelle
0

Stellen Sie außerdem sicher, dass der Ordner node_modules auch dort im Projektverzeichnis vorhanden ist. Wenn es nicht da ist, erhalten Sie ein ähnliches Problem. Führen Sie daher bitte auch die npm-Installation aus.

Kein Name
quelle
0

Obwohl die richtigen Antworten gegeben wurden. Aber all dies hat bei mir nicht funktioniert, weil:

  • Mein Benutzername hatte keine Administratorrechte und ich konnte die Umgebungsvariable nicht wie in den Antworten vorgeschlagen aktualisieren.

Für alle von Ihnen, die hier vor dem gleichen Problem stehen wie ich, habe ich Folgendes getan:

Anstatt ng serve

Ich habe den vollständigen Standortpfad ngwie folgt kopiert und es hat funktioniert. So wurde der ng serveBefehl:

C:\Users\MyUserName\AppData\Roaming\npm\ng.cmd serve

SU7
quelle
0

Für VSCode Terminal First öffnen cmdund angular-clials global installieren

npm install -g @angular/cli

Aktualisieren Sie anschließend Ihre Umgebungsvariablen, indem Sie diesen Schritt ausführen

  1. win + s // Dies öffnet das Suchfeld
  2. Geben Sie Bearbeitungsvariablen bearbeiten ein
  3. Umgebungsvariablen öffnen
  4. Fügen Sie %AppData%\npminnen hinzuPATH
  5. Klicken OKund schließen.

Jetzt können Sie Ihr System neu starten VSCodeund es funktioniert wie gewohnt.

Kirubel
quelle