ng: command not found while creating new project using angular-cli
Solution 1:
The issue is simple, npm
doesn't know about ng
Just run npm link @angular/cli
and it should work seamlessly.
Solution 2:
First, angular-cli
is deprecated and has been replaced with @angular/cli
. So if you uninstall your existing angular-cli with npm uninstall angular-cli
, then reinstall the package with the new name @angular/cli you might get some conflicts. My story on Windows 7 is:
I had installed angular-cli and reinstalled using npm install -g @angular/cli
, but after doing some config changes to command-line tools, I started getting the ng command not found issue. I spent several hours trying to fix this but none of the above issues alone worked. I was able to fix it using these steps:
Install Rapid Environment Editor and remove any PATH entries for node, npm, angular-cli or @angular/cli. Node.js will be in your System path, npm and angular entries are in the User path.
Uninstall node.js and reinstall the current version (for me 6.11.1). Run Rapid Environment Editor again and make sure node.js and npm are in your System or User path. Uninstall any existing ng versions with:
npm uninstall -g angular-cli
npm uninstall -g @angular/cli
npm cache clean
Delete the C:\Users\%YOU%\AppData\Roaming\npm\node_modules\@angular folder.
Reboot, then, finally, run:
npm install -g @angular/cli
Then hold your breath and run:
ng -v
If you're lucky, you'll get some love. Hold your breath henceforward every time you run the ng command, because 'command not found' has magically reappeared for me several times after ng was running fine and I thought the problem was solved.
Solution 3:
Make sure that the npm directory is in your "Path" variable.
If the module is installed properly, it may work if you start it out of your global node module directory, but your command line tool doesn't know where to find the ng
command when you are not in this directory.
For Win system variable add something like:
%USERPROFILE%\AppData\Roaming\npm
And if you use a unix-like terminal (emulator):
PATH=$PATH:[path_to_your_user_profile]/path-to-npm