bower安装什么都不做,甚至没有抛出错误
我在Ubuntu 14.04上。 我做了sudo apt-get install npm
。 然后我做了npm install -g bower
,这是成功的。
使用which npm
,我得到/usr/bin/npm/
。
使用which bower
,我得到/usr/local/bin/bower
。
我克隆了一个有bower.json
的github存储库。 我尝试在root中bower install
,但没有任何反应。 就像在,它不回应任何东西,不安装任何东西。 它只是…没有。 我试过bower --help
,没有任何事情发生。
我尝试了sudo apt-get update
,它说npm
是最新的。 Nodejs
存在。 每当我用npm做任何事情时,它都什么都不做。
编辑:当我做npm --global ls
,bower列在目录中
这可能是什么问题,我该如何解决?
我有同样的问题。 它似乎是由不正确的节点包引起的。
删除节点包并安装旧版程序包对我有用:
apt-get remove node apt-get autoremove apt-get install nodejs-legacy
这项工作对我来说:
bower install --force
--force
强制安装的地方
您检查了which npm
和which bower
,但您没有检查which node
。 在Ubuntu上, node
包与NodeJS无关。 nodejs
包安装为nodejs
,它将破坏任何依赖于node
脚本。 这类似于jshint的全局安装无效的另一个问题。
假设您安装了nodejs
,您可以创建一个符号链接,以便node
指向nodejs
:
sudo ln -s /usr/bin/nodejs /usr/bin/node
如果这不起作用,或者您不想在官方存储库中使用 nodejs
版本,则可以从PPA安装Node (这将为您提供node
和nodejs
命令)或使用NVM (这是我个人的偏好) ,因为它避免了在安装npm模块时需要sudo
)。
在Ubuntu 14.04上,我解决了它:
sudo apt-get remove npm sudo apt-get remove node sudo apt-get autoremove sudo apt-get update sudo apt-get install nodejs sudo ln -s /usr/bin/nodejs /usr/bin/node
对于有这个问题的人,但所有其他修复都不起作用。 我发现我输错了命令,我认为在命令之前需要一个nodejs,如:
nodejs bower install
但是凉亭直接从终端执行
bower install
傻我知道!
Ubuntu 14.04及更高版本
在Ubuntu 16.04及更高版本中,可以从Ubuntu Software应用程序快速轻松地安装Bower包管理器。 打开Ubuntu软件,搜索“bower”并单击Install按钮进行安装。 在Ubuntu 14.04及更高版本中打开终端并输入:
sudo snap install --classic bower