【问题标题】:Angular Cli - ng command not found in terminal在终端中找不到 Angular Cli - ng 命令
【发布时间】:2018-06-16 06:36:43
【问题描述】:

规格:

  • 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

【问题讨论】:

  • 输入npm list -g --depth=0会说什么
  • 我之前试过,它说@angular/cli@1.6.3 在以下路径中:/Users//.npm-global/lib
  • 听起来不像是 Mac。
  • 你在运行虚拟机吗?
  • 尝试以下 3 件事,1。 npm uninstall -g @angular/cli 2. npm cache verify 3. npm install -g @angular/cli@latest(卸载、清理 npm 缓存、重新安装)

标签: angular angular-cli


【解决方案1】:

按照以下步骤操作:

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

这应该可以完成工作。

【讨论】:

    【解决方案2】:

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

    echo $NODE_PATH
    

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

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

    为了让它更持久,把它放在你的~/.bash_profile中,然后重启你的终端(否则source ~/.bash_profile

    【讨论】:

      【解决方案3】:

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

      npm install -g @angular/cli

      在终端中,您将收到错误: ng: command not found 或者其他错误,这是因为你没有访问 npm 的全局目录

      解决办法是: 只需使用 sudo

      sudo npm install -g @angular/cli

      【讨论】:

        【解决方案4】:

        如果您使用基于 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. 在您的新节点设置中安装 Angular CLI:

          npm install -g @angular/cli

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

        【讨论】:

          【解决方案5】:

          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 
          

          【讨论】:

            【解决方案6】:

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

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

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

            【讨论】:

              猜你喜欢
              • 2020-01-27
              • 2017-04-05
              • 2018-03-19
              • 2017-04-13
              • 1970-01-01
              • 2013-10-30
              • 2021-05-05
              • 2016-09-10
              • 2016-04-11
              相关资源
              最近更新 更多