164

我试图在我的 Mac 上安装 twitter bower,我用

npm install bower -g

然后我试bower --help了一下,结果是bower command not found。这是为什么?

4

5 回答 5

373

就像在这个问题(npm 全局路径前缀)中一样,您只需正确设置npm prefix

UNIX:

$ npm config set prefix /usr/local
$ npm install -g bower

$ which bower
>> /usr/local/bin/bower

Windows 和 NVM:

$ npm config set prefix /c/Users/xxxxxxx/AppData/Roaming/nvm/v8.9.2
$ npm install -g bower

然后bower应该位于您的$PATH.

于 2013-12-17T07:17:01.540 回答
61

我几乎可以肯定您实际上并没有正确安装它。由于您尝试全局安装它,因此您需要使用 sudo 运行它:

sudo npm install -g bower
于 2013-12-05T00:20:29.737 回答
7

或者,您可以使用npxnpm > 5.6 附带的。

npx bower install

于 2019-07-02T19:05:44.133 回答
4

事实证明这不是凉亭问题,尽管凉亭出现在我身上。

这似乎是一个节点-哪个问题。如果文件在路径中,但设置了 setuid/setgid 位,则不会找到它。

这是一个设置了 s 位的文件:(unix 'which' 会毫无问题地找到它)。

ls -al /usr/local/bin -rwxrwsr-- 110 root nmt 5535636 2012 年 7 月 17 日 git

这是一个节点尝试:

> which.sync('git')
Error: not found: git

我更改了权限(chomd 755 git)。现在 node-which 可以找到它。

> which.sync('git')
'/usr/local/bin/git'

希望这可以帮助。

于 2013-12-18T21:30:36.340 回答
3

我正在使用节点版本管理器。我收到此错误消息是因为我已切换到不同版本的节点。当我切换回安装 bower 的节点版本时,此错误消失了。就我而言,命令是nvm use stable

于 2016-01-27T23:53:57.137 回答