【问题标题】:Trouble with local install of bower [duplicate]本地安装凉亭的问题[重复]
【发布时间】:2014-02-23 18:15:06
【问题描述】:

我在项目中本地安装了 bower,在其中创建了一个文件夹“node_modules”和“bower”。然后我在命令行上运行 bower:

$ bower
bower: команда не найдена (command not found)

这是为什么?如果我在全球范围内安装 Bower,一切正常。

【问题讨论】:

  • 如果您全局安装 bower,您将能够使用 bower 命令。虽然你也可以像这样使用本地安装的凉亭:./node_modules/bower/bin/bower install
  • 是的,用npm install -g bower全局安装它

标签: javascript node.js bower


【解决方案1】:

如何安装 Bower (from the docs):

npm install -g bower

重要的部分是 -g 标志,因为它通知 npm “全局”安装它。这意味着 npm 将为您的 Node.js 二进制文件夹(位于您的 PATH)中的 bower 二进制* 创建一个 symlink。这允许您的 shell(无论是 Bash、zsh、csh 等)找到命令。

如果你运行npm install bower,为什么它不起作用?

只运行npm install bower 会将给定的包安装到node_modules/{package} 下的当前文件夹中。如果您这样做并尝试从命令行运行bower,您的shell 将不知道在哪里可以找到bower 命令,因为它不在您的PATH 中(因此出现“找不到命令”错误)。

正如 @Jason 在 cmets 中指出的那样,您可以通过运行 ./node_modules/bower/bin/bower 显式运行 bower 二进制文件*。当像这样运行时,您的 shell 将知道在哪里可以找到该命令。如果需要,您可以将其别名为更短的名称:

alias bower="./node_modules/bower/bin/bower"

* 我非常松散地使用二进制这个词。它更像是一个标记为可执行的文件,上面带有shebang

【讨论】:

  • 奇怪的是,当我执行这些指令时出现此错误:bower EINVALID The name has to end with a lower case character from a to z编辑:为了解决这个问题,我只需要一个至少完成了“必填”字段的 bower.json 文件。
猜你喜欢
  • 2014-08-08
  • 2014-07-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-03
  • 2014-02-09
  • 2013-05-23
  • 2017-03-14
  • 2016-06-13
相关资源
最近更新 更多