Я попытался установить Twitter Bower на моем Mac, и я использовал
npm install bower -g
Тогда я попытался bower --help
, и выход был bower command not found
. Это почему?
Я попытался установить Twitter Bower на моем Mac, и я использовал
npm install bower -g
Тогда я попытался bower --help
, и выход был bower command not found
. Это почему?
Ответы:
Как и в этом вопросе ( префикс глобального пути 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
.
node_modules
локально, package.json
а не глобально, поскольку разные проекты могут использовать разные версии (в этом весь смысл npm
). Реальная проблема заключается в том, что система не может найти исполняемый файл локального сервера.
Я почти уверен, что вы на самом деле не устанавливаете его правильно. Поскольку вы пытаетесь установить его глобально, вам нужно запустить его с помощью sudo:
sudo npm install -g bower
Оказалось, что это НЕ проблема с беседкой, хотя для меня это оказалось с беседкой.
Кажется, это узел, какая проблема. Если файл находится в пути, но установлен бит setuid / setgid, который не найдет его.
Вот файлы с установленным битом s: (unix 'which' найдет его без проблем).
ls -al / usr / local / bin -rwxrwsr-- 110 root nmt 5535636 17 июля 2012 г. git
Вот узел-попытка:
> which.sync('git')
Error: not found: git
Я меняю права доступа (chomd 755 git). Теперь узел, который может его найти.
> which.sync('git')
'/usr/local/bin/git'
Надеюсь это поможет.
В качестве альтернативы, вы можете использовать, npx
который приходит с npm> 5.6.
npx bower install
npm install
? Это не удалось? Это установило беседку в какое-то место не на вашемPATH
?