bowerコマンドが見つかりません


158

Macにtwitter bowerをインストールしようとしましたが、

npm install bower -g

それから私は試しましたbower --help、そして出力はでしたbower command not found。何故ですか?


2
からの出力はnpm install何ですか?失敗しましたか?バウアーをあなたのいない場所にインストールしましたPATHか?
jches 2012


回答:


365

この質問のように(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


1
複数のプロジェクトで作業している場合、これは最も正しい答えではないことを付け加えておきます。異なるプロジェクトが異なるバージョンを使用できるため、Bowerはnode_modulesローカルではpackage.jsonなくローカルからインストールする必要があります(それがの全体的なポイントですnpm)。実際の問題は、システムがローカルバウアー実行可能ファイルを見つけることができないことです。
Bruno Finger

@BrunoFinger:bowerをグローバルスコープにインストールする場合、その答えは問題を解決しません。ただし、プロジェクト固有のツールを扱うには、ローカルノードパッケージを使用する方がよい場合があります。
Petr Joachim

npmプレフィックスが/ usr / localに設定されている場合、npm install -gはsudoなしでは失敗すると思います。
imafish

新しいプロジェクトでBowerを使用することはお勧めしません。糸とウェブパックまたは小包を検討してください。
ダニエル

60

実際に正しくインストールされていないことはほぼ間違いありません。グローバルにインストールしようとしているので、sudoで実行する必要があります。

sudo npm install -g bower

3
これがbowerのインストール方法です。それ以外の場合は、コマンドを実行したフォルダーにインストールされます。-gはグローバルを意味し、システムコマンドとして実行できるモジュールに必要なリンクも作成します。bower、grunt-cli、npmもこの明確な例です。
エリックRuiz de Chavez

sudoでインストールしないでください!Brew Doctorを使用して、Brew Doctorが提案する修正を行うだけで、sudoを使用する必要がなくなります!
djangofan 2017年

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)。今、それを見つけることができるノード。

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

お役に立てれば。


3

ノードバージョンマネージャを使用しています。別のバージョンのノードに切り替えたため、このエラーメッセージが表示されました。bowerをインストールしたバージョンのノードに切り替えたところ、このエラーは解消されました。私の場合、コマンドはnvm use stable


3

または、npxnpm> 5.6に付属しているものを使用できます。

npx bower install


1
これは受け入れられる答えになるはずです。npmでグローバルモジュールをインストールしないでください。
chovy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.