在终端中找不到Angular Cli - ng命令

时间:2018-01-06 18:51:14

标签: angular angular-cli

规格:

  • MacOS 10.12.6

  • Node.js v8.9.4

  • NPM 5.6.0

我是编程(和stackoverflow)的新手。我在终端中使用以下命令安装了Angular:npm install -g @ angular / cli。我遇到了一个EACCESS错误,但this解决了它。最初我能够运行ng命令。但在关闭并重新打开终端后,发生了“ng:command not found”错误。我删除了Angular并重新安装了它。但这没有帮助。

Screenshot of the "ng: command does not exist" error

Screenshot of npm list -g --depth=0

Errors in uninstalling Angular part 1

Errors in uninstalling Angular part 2

echo $PATH

6 个答案:

答案 0 :(得分:1)

我建议你尝试另一种安装nodejs的方法,比如使用Node Version Manager。 它非常易于使用,并允许您在同一台机器上运行多个版本的nodejs和npm依赖项。

由于它是stated in npm documentation,EACCESS错误通常会消失以下策略:

  1. 使用版本管理器(如节点版本管理器)
  2. 更改nodejs默认安装目录

答案 1 :(得分:1)

Nodejs网站安装包安装它几乎就像预期的一样。 所以我们在这里看到两个问题

  • 预安装目录,可以使用chmod
  • 修复
  • 位置未知,可以使用export
  • 修复

您可以通过编辑〜/ .bash_profile进行导出 并添加

export PATH="[Enter your path here]:$PATH"

但是如果你是新手,我强烈建议帮助安装像homebrew approach这样非常友好的mac安装/更新终端软件。

如果可能,将要卸载当前节点。

然后就是

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

brew update

brew doctor

export PATH="/usr/local/bin:$PATH"

brew install node

npm install -g @angular/cli@latest 

答案 2 :(得分:0)

如果您正在使用基于Homebrew的Node和NPM安装,则安装可能不会将全局安装的软件包保留在可预测的位置(我没有)。

These steps帮助我确保了Angular CLI和其他全局安装的软件包都位于可预测的位置,并且现在它们可以在我的终端上正常工作。

摘要:

  1. 删除任何现有的NPM软件包:

    sudo rm -rf /usr/local/lib/node_modules

  2. 删除当前安装的Node和NPM:

    brew uninstall node

  3. 预配置NPM以将软件包安装在主目录下的某个位置:

    echo prefix=~/.npm-packages >> ~/.npmrc

  4. 将新的NPM软件包位置添加到Shell的搜索路径:

    echo 'export PATH="$HOME/.npm-packages/bin:$PATH"' >> ~/.bash_profile

  5. 退出并重新启动终端应用程序

  6. 在全新的Node设置中安装Angular CLI:

    npm install -g @angular/cli

现在ng命令应该位于~/.npm-packages/bin/ng,并且您应该能够成功运行ng --version

答案 3 :(得分:0)

您需要在全局范围内而不是本地安装@ angular / cli 。 如果您输入:

  

npm install -g @ angular / cli

在终端中,您将得到错误: ng:找不到命令或其他错误,这是因为您无权访问npm的全局目录

解决方案是: 只需使用sudo

  

sudo npm install -g @ angular / cli

答案 4 :(得分:0)

您是否尝试检查NODE_PATH环境变量值?

echo $NODE_PATH

如果为空(并给出您在MacOS中的默认安装位置) 尝试将其设置为:

export NODE_PATH=/usr/local/lib/node_modules:/usr/local/lib/node

要使其更具永久性,请将其放入~/.bash_profile内,然后重新启动终端(否则重新启动source ~/.bash_profile

答案 5 :(得分:0)

请按照以下步骤操作:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash

export NVM_DIR="/Users/Enter-Your-own-username/.nvm"

以下命令将加载nvm

[-s“ $ NVM_DIR / nvm.sh”] &&。 “ $ NVM_DIR / nvm.sh”

键入以下命令:

nvm install stable

nvm install node

检查节点的已安装版本以验证安装 节点版本

如果您已经安装了节点,请执行以下步骤:

npm install -g @angular/cli

在同一终端会话中,键入以下命令:

ng version

    _                      _                 ____ _     ___
   / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
  / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
 / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
/_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
               |___/

使用以下命令创建一个新项目:

ng new angularProject

ng server angularProject

类型:

localhost:4200

那应该做的。