我在这里查看了有关此问题的大量帖子,并尝试了它们,但没有成功解决该问题。
我使用的是MacOS,这是到目前为止,根据我在这里找到的建议,我已经做过的事情,但仍然出现此错误
~~ sudo npm uninstall -g angular-cli
~~ sudo npm uninstall -g @angular/cli
~~ sudo npm cache clean --force
~~ sudo npm install -g @angular/cli
这将输出:
/usr/local/Cellar/node/11.10.0/bin/ng -> /usr/local/Cellar/node/11.10.0/lib/node_modules/@angular/cli/bin/ng
> @angular/cli@8.3.6 postinstall /usr/local/Cellar/node/11.10.0/lib/node_modules/@angular/cli
> node ./bin/postinstall/script.js
+ @angular/cli@8.3.6
added 245 packages from 185 contributors in 8.784s
但是,下面的发布命令不起作用:
~~ ng version
-bash: ng: command not found
有人建议链接,所以我也尝试过:
~~ sudo npm link @angular/cli
,其输出如下:
/Users/dinob/node_modules/@angular/cli -> /usr/local/Cellar/node/11.10.0/lib/node_modules/@angular/cli
,但是ng版本仍无法正常工作:
~~ ng version
-bash: ng: command not found
许多帖子建议在/ Users / dinob目录下创建一个目录.npm-global
,但我看不到它。我只能看到.npm
目录,而不是.npm-global
。
我还尝试了以下操作:
如上所述卸载角钢
酿造更新
酿造升级节点// //从11.10.0升级到12.10.0
然后重复上述步骤以安装angular / cli
还是同样的问题,找不到ng命令
这不是肯怀特(KenWhite)所建议的重复问题,我已经查看了所有关于此问题的帖子,我可以找到(以及更多)有关此问题的信息,尝试了它们,但没有一个为我解决问题。
sudo npm install -g @ angular / cli命令已完成,并返回以下路径,但其中没有@angular目录:
/usr/local/Cellar/node/11.10.0/bin/ng -> /usr/local/Cellar/node/11.10.0/lib/node_modules/@angular/cli/bin/ng
上面,没有bin文件夹:
dinob @ /usr/local/Cellar/node/11.10.0
~~ ls -la
total 80
drwxr-xr-x 8 dinob staff 256 2 Oct 11:30 ./
drwxr-xr-x 5 dinob staff 160 27 Sep 09:29 ../
-rw-r--r--@ 1 dinob staff 8196 2 Oct 11:32 .DS_Store
-rw-r--r-- 1 dinob staff 26696 14 Feb 2019 README.md
drwxr-xr-x 3 dinob staff 96 14 Feb 2019 etc/
drwxr-xr-x 3 dinob staff 96 14 Feb 2019 include/
drwxr-xr-x 5 dinob staff 160 2 Oct 11:22 lib/
drwxr-xr-x 5 dinob staff 160 14 Feb 2019 share/
与该位置> @angular/cli@8.3.6 postinstall /usr/local/Cellar/node/11.10.0/lib/node_modules/@angular/cli
相同:
dinob @ /usr/local/Cellar/node/11.10.0/lib/node_modules
~~ ls -la
total 16
drwxr-xr-x 6 dinob staff 192 2 Oct 11:22 ./
drwxr-xr-x 5 dinob staff 160 2 Oct 11:22 ../
-rw-r--r--@ 1 dinob staff 6148 2 Oct 11:27 .DS_Store
drwxr-xr-x 7 root staff 224 26 Sep 16:42 n/
drwxr-xr-x 26 dinob staff 832 2 Oct 11:28 npm/
drwxr-xr-x 6 dinob staff 192 15 Jul 16:32 react-native-cli/
答案 0 :(得分:8)
如果上述所有方法均无效,请在Homebrew上安装angular-cli
。
在您的终端(ZSH)中运行此操作
:brew install angular-cli
喝咖啡,回来然后运行以进行测试。
ng --version
宾果
答案 1 :(得分:4)
经过数天的搜索并且在这里和@Angular github上都没有用,这几乎是没有用的,终于能够解决此问题,并按照以下步骤解决了我的angular ng命令未解决的问题:
1。安装nvm
发出这3个命令以安装nvm。 (记录在文档中的https://angular.io/guide/setup-local的角度介绍步骤对我不起作用)。
所以我像这样安装了nvm:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
export NVM_DIR="/Users/your-user-name/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
此后,请确保重新启动终端,并且应该能够发出nvm --version
来查看已安装的nvm的版本。
2。使用nvm安装节点
nvm install stable
nvm install node
3。最后,安装angular
npm install -g @angular/cli
4。重新启动终端
重新启动终端,您应该可以使用ng version
查看系统上安装的版本
~~ ng version
_ _ ____ _ ___
/ \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _|
/ △ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | |
/ ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | |
/_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___|
|___/
Angular CLI: 8.3.6
Node: 12.11.1
OS: darwin x64
Angular:
...
Package Version
------------------------------------------------------
@angular-devkit/architect 0.803.6
@angular-devkit/core 8.3.6
@angular-devkit/schematics 8.3.6
@schematics/angular 8.3.6
@schematics/update 0.803.6
rxjs 6.4.0
我现在可以创建并启动我的项目
ng new my-test-project
ng serve my-test project
我认为SO应该开始认真对待人们拒绝投票的问题或将其标记为重复项,然后再阅读它们,甚至试图理解所问的内容和问题所在。
似乎有很多人阅读标题并据此决定问题的命运,任何分歧最终都会完全阻止问题。
应该帮助网站的偏见和仇恨太大。
非常需要更好的选择。
更新
如果您像我一样,并切换为使用zsh shel而不是bash shell(因为Catalina MacOs现在使用zsh),您可能已经注意到ng version
已停止为您工作。
在这种情况下,请在vim中打开您的.zshrc文件:
vi ~/.zshrc
在此处找到此行:
source $ZSH/oh-my-zsh.sh
在此行下,添加以下行:
source /Users/Your-User-Name/.bash_profile
通过按Esc键并输入:wq
并按Enter键来保存文件
重启终端
重新发出ng version
,您应该在zsh shell中看到它:
答案 2 :(得分:3)
最好的办法是
alias ng="/Users/YourName/.npm-global/bin/ng"
答案 3 :(得分:1)
@pixel谢谢!
存在相同的问题。我最近将终端切换到zsh,并且也在Visual Studio Code中这样做,但是从未完全关闭所有正在运行的窗口。好吧,我终于在昨晚退出了Visual Studio Code,今天ng serve
命令无效。我注意到我的Visual Studio的外壳环境现在设置为zsh ...
2分钟后,按照您的步骤进行操作,我已恢复运行。
答案 4 :(得分:1)
可能不会创建“ ng”的环境变量。我们可以使用以下步骤手动创建它:
通过打开bash个人资料来检查是否存在“ ng”别名
触摸〜/ .bash_profile;打开〜/ .bash_profile
如果找不到“ ng”的别名,请在bash文件中添加以下别名并保存
别名ng=/usr/local/Cellar/node/13.5.0/lib/node_modules/@angular/cli/bin/ng
注意:@ angular / cli已安装在以下路径下 /usr/local/Cellar/node/13.5.0/lib/node_modules/@angular/cli。因此,我将在角度cli下出现的ng添加到别名中。
现在,使用来检查ng版本
ng --version
这对我有用。
答案 5 :(得分:0)
我遇到了同样的问题,但是解决方法是将其添加到我的$PATH
中。
在具有zsh的MacOS Mojave上,@ Angular / CLI并未添加到$PATH
中。您只需将其附加到/private/etc/paths
即可:
sudo vim /private/etc/paths
/Users/my_user_name/node_modules/@angular/cli/bin
或安装@ Angular / CLI的任何位置。:wq
)并重新启动Shell。 ng version
然后起作用。