162

使用 ( ) 全局安装了 angular-clinpm install -g angular-cli但是当我尝试使用ng new my-project它创建项目时抛出错误:

ng:找不到命令

4

38 回答 38

230

问题很简单,npm不知道ng

只需运行npm link @angular/cli,它应该可以无缝运行。

于 2017-12-20T11:37:51.053 回答
62

首先,angular-cli已弃用并已替换为@angular/cli. 因此,如果您使用 卸载现有的 angular-cli npm uninstall angular-cli,然后使用新名称 @angular/cli 重新安装软件包,您可能会遇到一些冲突。我在 Windows 7 上的故事是:

我已经安装了 angular-cli 并使用 重新安装npm install -g @angular/cli,但是在对命令行工具进行了一些配置更改后,我开始遇到 ng command not found 问题。我花了几个小时试图解决这个问题,但上述问题都没有单独起作用。我能够使用以下步骤修复它:

安装Rapid Environment Editor并删除 node、npm、angular-cli 或 @angular/cli 的任何 PATH 条目。Node.js 将在您的系统路径中,npm 和角度条目在用户路径中。

卸载 node.js 并重新安装当前版本(对我来说是 6.11.1)。再次运行 Rapid Environment Editor 并确保 node.js 和 npm 在您的系统或用户路径中。卸载任何现有的 ng 版本:

npm uninstall -g angular-cli

npm uninstall -g @angular/cli

npm cache clean

删除C:\Users\%YOU%\AppData\Roaming\npm\node_modules\@angular文件夹。

重新启动,然后,最后,运行:

npm install -g @angular/cli

然后屏住呼吸跑:

ng -v

如果你幸运的话,你会得到一些爱。以后每次运行 ng 命令时都屏住呼吸,因为在 ng 运行正常之后,“找不到命令”已经神奇地再次出现在我身上,我认为问题已经解决了。

于 2017-07-23T13:25:06.250 回答
30

确保 npm 目录位于您的“ Path ”变量中。

ng如果模块安装正确,如果你从全局节点模块目录启动它可能会工作,但是当你不在这个目录中时,你的命令行工具不知道在哪里找到命令。

对于Win系统变量,添加如下内容:

%USERPROFILE%\AppData\Roaming\npm

如果您使用类似unix 的终端(模拟器):

PATH=$PATH:[path_to_your_user_profile]/path-to-npm
于 2017-01-17T12:32:21.937 回答
24

最简单的解决方案是(如果您已经安装了 angular):

1 删除 ng 别名(如果存在)

unalias ng

2 添加正确的别名

alias ng="/Users/<user_name>/.npm-global/bin/ng"

3 run ng serve 例如,它会起作用。

于 2018-01-24T05:45:54.100 回答
20

这就是我让它为我工作的方式:)。

1 -npm link @angular/cli

它将返回cli的路径,如下所示

/usr/local/Cellar/node/11.3.0_1/lib/node_modules/@angular/cli

对于这部分,/11.3.0_1请将其替换为您可以通过键入找到的相应节点版本node --version

2 -cd ~/

3 -open .bash_profile

在 bash 配置文件中为cli创建一个别名,如下所示,

alias ng="/usr/local/Cellar/node/11.3.0_1/lib/node_modules/@angular/cli/bin/ng"

4 -source ~/.bash_profile

这就是.bash_profile您添加别名后的样子。

在此处输入图像描述

现在ng在终端中输入将显示附加快照中显示的输出。

在此处输入图像描述

我希望这个答案会有所帮助。

于 2019-03-15T09:52:06.417 回答
16

对于 Mac 运行

npm install -g @angular/cli@latest

然后运行

alias ng="/usr/local/lib/node_modules/node/lib/node_modules/@angular/cli/bin/ng"

检查是否工作

ng version
于 2019-01-11T03:15:57.867 回答
13

在我的情况下安装角度cli

npm install -g @angular/cli@latest

将 Nodejs 更新为 latest,那么一切都应该可以正常工作。

...如果您仍然有这个问题,可能是因为您在 shell 而不是在 cmd 中运行命令(您需要在 cmd 中运行命令),检查一下,也许它会有所帮助...

于 2019-10-04T21:25:20.193 回答
13

Run below commands:

npm uninstall -g angular-cli

npm uninstall -g @angular/cli

npm cache clean

npm install -g @angular/cli@latest

alias ng="C:/Users/itaas/.npm-global/ng" ( Location of ng file in npm folder)

And finally run :

ng -v 

Ng-v

于 2018-07-11T06:02:24.307 回答
12

如果您已全局安装 angular cli 但ng不起作用,请执行以下操作:

echo -e "export PATH=$(npm prefix -g)/bin:$PATH" >> ~/.bashrc

source ~/.bashrc

ng --version
于 2020-01-15T16:11:00.660 回答
12

我通过添加别名解决了同样的问题,例如:

alias ng="path-to-your-global-node-modules/angular-cli/bin/ng"
于 2016-10-20T15:30:28.037 回答
8

添加%AppData%\npm到 Win 路径对我有用。

来源:https ://github.com/angular/angular-cli/issues/1183 ,第一条评论。

于 2019-09-09T08:58:12.647 回答
5

尝试这个 :

别名 ng="~/node_modules/@angular/cli/bin/ng"

于 2019-06-15T23:08:43.843 回答
5

首先,检查您的 npm 和 node 是否
使用命令npm versionnode -v.

如果它们是正确的:

  1. 找到 NPM 的根全局目录npm root -g(它将为您提供全局 npm 存储的根目录)

  2. npm uninstall -g angular-cli 使用and卸载旧的 Angular clinpm cache clean

  3. 重新安装新版本的角度npm install -g @angular/cli@latest

  4. 创建一个名为 ng 的别名:

alias ng="C:/ProgramData/npm/node_modules/@angular/cli/bin/ng"

alias ng="<ath-to-your-global-node-modules>/<angular cli path till ng>"
(从 2016 年 10 月 20 日 15:30 @m.zemlyanoi 回答)

然后检查你可以输入 ng -v

于 2018-02-13T10:15:23.527 回答
5

对于 Mac 用户:

1) 全局安装@angular/cli

$ sudo npm install -g @angular/cli
/usr/local/Cellar/node/10.0.0/bin/ng -> /usr/local/Cellar/node/10.0.0/lib/node_modules/@angular/cli/bin/ng

2) 为 ng 创建别名

alias ng="/usr/local/Cellar/node/10.0.0/lib/node_modules/@angular/cli/bin/ng"

完毕

于 2019-05-15T09:51:16.270 回答
4

在尝试创建项目之前,请确保已安装angular-cli 。Windows 用户可以在不授予命令权限的情况下安装angular-cli ,但 MAC 用户必须在执行命令之前使用sudo,如下所示:

sudo npm install -g angular-cli

询问时输入密码,然后按 Enter 继续。

于 2017-07-09T22:34:48.857 回答
4

同样的问题在这里运行Windows 10 x64 / NodeJS 6.9.1 / npm 3.10.9
通过 npm 安装 Angular CLI 后:

找不到“ng”命令

请执行下列操作:

  1. 卸载npmnpm uninstall -g npm
  2. 通过控制面板/程序和功能卸载 NodeJS
  3. https://nodejs.org/download/release/v6.5.0/ ( node-v6.5.0-x64.msi )下载并运行“旧” NodeJS 安装程序版本 6.5.0 。
  4. NodeJS 6.5.0安装完成后,打开powershell并npm install -g angular-cli
  5. 来一杯速溶咖啡
  6. 安装完成后,ng工作正常。

高温高压

于 2016-11-14T20:38:41.093 回答
4

我遇到了同样的问题,我使用的是 git bash 终端,我使用这个命令安装了 angular cli

npm install -g @angular/cli

但是当我尝试创建新应用程序时,它给了我错误 ng: command not found,我刚刚重新启动了我的电脑并且它工作了,即使再次关闭和打开终端有时也会解决问题

于 2021-08-25T11:13:51.703 回答
3

对于 macbook 操作系统

sudo npm uninstall -g @angular/cli
sudo npm cache verify
sudo npm install -g @angular/cli@latest

如果不起作用,请尝试使用 ng -v 然后设置别名并尝试

alias ng="/usr/local/Cellar/node/10.0.0/lib/node_modules/@angular/cli/bin/ng"
于 2021-03-31T07:30:03.900 回答
2

根据npmangular-cli已重命名为@angular/cli您可以使用以下语法来安装它。

npm install -g @angular/cli
于 2018-12-06T21:46:23.657 回答
2

如果您使用的是asdf-vm ,则需要运行adsf reshim nodejs以重新创建与全局模块的链接。

就我而言,这解决了我的问题,我希望也能解决你们所有人。

于 2021-04-05T12:55:43.093 回答
2

你安装node js包吗?https://nodejs.org/en/ 问候

于 2016-10-12T03:36:02.690 回答
2

如果您在安装 angular-cli 时发现此错误,请 -bash: ng: command not found尝试此操作,

从系统中删除节点后

install NVM from here https://github.com/creationix/nvm
Install Node via NVM: nvm install stable
run npm install -g angular-cli
于 2017-04-08T01:57:32.337 回答
2

最有可能的问题是您使用的是 PowerShell 而不是命令行。如果您使用 Windows PowerShell 运行:

cmd

然后下一次尝试:

ng --version

如果它有效运行:

ng new my-project
于 2021-05-23T18:44:19.313 回答
1

仅适用于 Windows 操作系统的解决方案....... 第一步:

安装nodejs版本:nodev 8.1.2

第二步:设置环境变量,如:C:\ProgramFiles\nodejs

第三步:安装 Angular 使用这个命令: npm install -g @angular/cli

安装后,您必须创建项目,例如:ng new first-project ......

于 2017-06-22T17:56:11.433 回答
1

跑步

export PATH=$PATH:/c/Users/myusername/AppData/Roaming/npm 

帮助。

确保您的实际用户名在 myusername 部分

于 2019-02-11T15:34:38.610 回答
1

在 Windows 上修复 NodeJS 安装为我解决了这个问题。

于 2019-05-03T13:42:15.967 回答
1

最大时间,这是 npm 和 angular cli 之间的路径问题冲突。

对我有用的解决方案->

  1. %USERPROFILE%\AppData\Roaming将其粘贴到文件资源管理器中并删除npm文件夹。
  2. npm install -g @angular/cli@latest运行此命令以重新安装最新的 Angular cli。
  3. npm link @angular/cli现在这个命令可以解决你的路径问题

从字面上看,三个步骤将解决您的问题,否则您需要通过搜索更新环境变量并打开编辑系统环境变量

Ariful Ahsan https://arifulahsan.com

于 2020-06-15T07:32:28.303 回答
1

对我来说(在 MacOSX 上)我必须这样做:

nvm install stable
npm install -g angular-cli

这将ng安装到:

/usr/local/lib/node_modules/@angular/cli/bin/ng

但是 npm 并没有将 ng 的链接放入

/usr/local/bin/

这就是为什么它不是 %PATH 的一部分,因此除了通过绝对地址之外,它可以在命令行中使用。

因此,我使用以下内容创建了指向 ng 的链接:

sudo ln -sf /usr/local/lib/node_modules/\@angular/cli/bin/ng /usr/local/bin/ng
于 2018-05-06T20:26:10.523 回答
1

I came here because I had the same issue on windows. The thing that baffled me most on this was I have had Node installed since Angular 4 dabbling here and there. And sure enough. That was my problem. I needed to upgrade node.

Just installing the newest version worked fine for me without having to do any of the above steps post the new install

于 2019-09-24T04:22:16.570 回答
0

就我而言,我只是运行了错误的节点版本。

我之前刚刚安装了一个新的节点版本来玩 Angular (2)。在工作中,我们使用 6.x,所以这是我在 nvm 中的默认设置。重新启动笔记本电脑后,ng因为我再次运行节点 6.x 而停止工作。所以对我来说,只需使用安装 Angular CLI 的版本即可:

nvm use node // with the node alias pointing to the right version

或者

nvm use v8.11.3 // if you happen to know the version

检查您安装的版本和别名

nvm list 
于 2018-08-19T11:10:48.247 回答
0

如果您有一台 MacOS 计算机(我的是 MOJAVE 10.14.2),只需将这些行添加到~/.bash_profile 文件的末尾:

export ANGULAR=~/.nvm/versions/node/v10.8.0/bin/ng
export PATH=$ANGULAR:$PATH

请注意,v10.8.0 是我安装的 Node.js 的版本。要获取您的版本,请运行以下命令:

node --version

完成后,通过终端/bash 重新加载它:

cd ~
source .bash_profile

完成这些步骤后,您应该能够运行您的ng二进制文件。

于 2019-01-04T00:28:45.347 回答
0

就我而言,它是在我重新开始在相邻选项卡上工作时发生的。这是未设置的 npm。请检查 npm wither 的版本使用

npm -v

或者如果你有 nvm 然后

非虚拟机列表

或者

非易失性电流

我将它设置为 8.9.1,然后它又开始工作了。我希望它有所帮助。

于 2018-07-23T06:57:45.120 回答
0

如果您在Windows 7中工作并且无法运行以ng开头的命令

请立即更新 angular/CLI 并尝试使用 ng 命令

使用以下命令更新最新的 CLI

npm install -g @angular/cli@latest
于 2018-04-20T12:02:22.097 回答
0

如果您安装了 zsh,请在主目录中的 .zshrc 文件中添加别名。

于 2019-08-02T14:33:31.153 回答
0

如果您使用企业计算机并且无法访问系统环境

使用RapidEE编辑用户变量然后添加到路径这些

%AppData%\npm

或者

%USERPROFILE%\AppData\Roaming\npm

它在 Windows 上对我有用

于 2020-10-30T11:02:08.567 回答
0

首先使用 npm 作为全局模块安装'@angular/cli'

sudo npm install -g @angular/cli

之后尝试使用终端窗口中的“ng”命令 ping cli。如果有任何问题,例如

未找到命令“ng”

然后你需要手动设置

命令可用性。您可以通过运行以下命令来设置此步骤。

ln -s path-to-your-ng-command /bin

例如:

sudo ln -s /opt/node/lib/node_modules/@angular/cli/bin/ng /bin/

于 2018-06-27T16:50:52.773 回答
0

这对我有用:

  1. 转到 C:\Users{{users}}\AppData\Roaming 并删除 npm 文件夹
  2. 卸载节点并重新安装
  3. 运行命令安装 Angular cli

    npm install -g @angular/cli
    
于 2018-07-28T13:01:57.960 回答
0

这可以更新您的 angular/cli //*全局包(cmd 作为管理员)

npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli@latest
于 2018-06-15T23:05:15.300 回答