ng:使用angular-cli创建新项目时找不到命令

时间:2016-05-14 14:22:03

标签: angular npm angular-cli

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

  

ng:找不到命令

37 个答案:

答案 0 :(得分:81)

问题很简单,npm不了解ng

只需运行npm link @angular/cli即可无缝运行。

答案 1 :(得分:26)

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

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

安装Rapid Environment Editor并删除node,npm,angular-cli或@ angular / cli的所有PATH条目。 Node.js将位于您的系统路径中,npm和angular条目位于用户路径中。

卸载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命令时都要屏住呼吸,因为在“运行正常”之后,“未找到命令”已经多次出现在我身上,我认为问题已经解决了。

答案 2 :(得分:10)

确保npm目录位于" Path"变量

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

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

%USERPROFILE%\AppData\Roaming\npm

如果你使用 unix-like终端(模拟器):

PATH=$PATH:[path_to_your_user_profile]/path-to-npm

答案 3 :(得分:7)

运行以下命令:

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"(ng文件在npm文件夹中的位置)

最后运行:

ng -v 

Ng-v

答案 4 :(得分:7)

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

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

unalias ng

2添加正确的别名

alias ng="/Users/<user_name>/.npm-global/bin/ng"
例如,运行3次运行,它将起作用。

答案 5 :(得分:6)

我通过添加别名来解决同样的问题:

alias ng="path-to-your-global-node-modules/angular-cli/bin/ng"

答案 6 :(得分:6)

在我的情况下,请安装angular cli

npm install -g @angular/cli@latest

将Node.js更新到最新版本,然后一切正常。

答案 7 :(得分:5)

如果您已全局安装角度cli,但 ng 无法正常工作,请执行以下操作:

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

source ~/.bashrc

ng --version

答案 8 :(得分:4)

对于Mac运行

npm install -g @angular/cli@latest

然后运行

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

检查是否正常

ng version

答案 9 :(得分:3)

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

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

答案 10 :(得分:3)

首先,检查你的npm和节点是否正确安装了 使用命令npm versionnode -v

如果他们是正确的:

  1. 找到NPM npm root -g的根全局目录(它会 给你全局npm商店的根目录

  2. 使用npm uninstall -g angular-cli卸载旧的角度cli 和npm cache clean

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

  4. 制作名称的别名:

  5. 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

答案 11 :(得分:2)

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

sudo npm install -g angular-cli

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

答案 12 :(得分:2)

如果在安装angular-cli时发现此错误, -bash: ng: command not found试试这个有效,

从系统中删除Node后

install NVM from here https://github.com/creationix/nvm
Install Node via NVM: nvm install stable
run npm install -g angular-cli

答案 13 :(得分:2)

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

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-{{​​1}}

3-cd ~/

在bash个人资料中,为 cli 这样创建别名

open .bash_profile

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

这是您向source ~/.bash_profile添加别名后的样子。

enter image description here

现在在终端中输入.bash_profile将显示在所附快照中显示的输出。

enter image description here

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

答案 14 :(得分:2)

运行 Windows 10 x64 / NodeJS 6.9.1 / npm 3.10.9 时出现同样的问题。
通过npm安装Angular CLI后:

  找不到

'ng'命令

执行以下操作:

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

答案 15 :(得分:2)

对于 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"

答案 16 :(得分:2)

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

npm install -g @angular/cli

答案 17 :(得分:1)

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

就我而言,这解决了我的问题,希望大家也能解决。

答案 18 :(得分:1)

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

nvm install stable
npm install -g angular-cli

这已安装到:

/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

答案 19 :(得分:1)

您是否安装了节点js包? https://nodejs.org/en/ 此致

答案 20 :(得分:1)

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

安装nodejs版本:nodev 8.1.2

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

第三步: install angular使用此命令:npm install -g @ angular / cli

安装完成后,你必须创建项目,如:ng new first-project ......

答案 21 :(得分:0)

最长时间,这是npm和角度cli之间的路径问题。

最适合我的解决方案->

  1. %USERPROFILE%\ AppData \ Roaming 粘贴到文件资源管理器中,然后删除 npm 文件夹。
  2. npm install -g @ angular / cli @ latest 运行此命令以重新安装最新的angular cli。
  3. npm链接@ angular / cli 现在,此命令可以解决您的路径问题

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

Ahful Ahsan https://arifulahsan.com

答案 22 :(得分:0)

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

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

%AppData%\npm

%USERPROFILE%\AppData\Roaming\npm

它在Windows上对我有用

答案 23 :(得分:0)

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

cmd

然后下一次尝试:

ng --version

如果可以运行:

ng new my-project

答案 24 :(得分:0)

我来这里是因为我在Windows上遇到了同样的问题。最令我困惑的是,自从Angular 4到处乱逛以来,我已经安装了Node。当然可以。那是我的问题。我需要升级节点。

仅安装最新版本对我来说效果很好,而无需在发布新安装后执行上述任何步骤

答案 25 :(得分:0)

如果您已安装zsh,则还应在主目录的.zshrc文件中添加别名。

答案 26 :(得分:0)

尝试:

alias ng =“〜/ node_modules / @ angular / cli / bin / ng”

答案 27 :(得分:0)

对于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"

完成

答案 28 :(得分:0)

修复Windows上的NodeJS安装为我解决了该问题。

答案 29 :(得分:0)

运行

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

有帮助。

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

答案 30 :(得分: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 二进制文件。

答案 31 :(得分: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 

答案 32 :(得分:0)

这对我有用:

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

    npm install -g @angular/cli
    

答案 33 :(得分:0)

就我而言,这是在我重新开始处理相邻选项卡时发生的。这是未设置的npm。请使用

检查npm的版本
  

npm -v

或者如果您正在使用nvm,那么

  

nvm列表

  

当前nvm

我将其设置为8.9.1,然后再次开始工作。 希望对您有所帮助。

答案 34 :(得分:0)

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

sudo npm install -g @angular/cli

然后尝试在终端窗口中使用'ng'命令对cli进行ping操作。

  

找不到命令“ ng”

然后您需要手动设置

  

ng

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

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

例如:

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

答案 35 :(得分:0)

这可用于更新角度/ cli // *全局包(cmd为管理员)

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

答案 36 :(得分:0)

如果您使用的是 Windows 7 ,则无法使用 ng

运行命令启动

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

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

npm install -g @angular/cli@latest