npm install bower -g
を実行すると、次のようになります
/usr/local/share/npm/bin/bower -> /usr/local/share/npm/lib/node_modules/bower/bin/bower
[email protected] /usr/local/share/npm/lib/node_modules/bower
残念ながら、bowerコマンドのいずれかを実行すると-bash: bower: command not found
が返されます
which npm
は/usr/local/bin/npm
を返し、which node
を実行すると/usr/local/bin/node
を返します。
Node.jsをHomebrew経由でインストールしたと仮定します。Homebrewは、インストールされたnpmバイナリを、通常はユーザーパスにない場所に配置します。必要なことは、/usr/local/share/npm/bin
を$ PATHに追加することだけです。それには、export PATH=/usr/local/share/npm/bin:$PATH
を.bashrc/.bash_profile/.zshrcファイルに追加します。
HomebrewをインストールしたNode.jsをアンインストールし、インストーラで nodejs.org からインストールしますが、この問題はありません。
この問題はBower固有のものではなく、グローバルにインストールされたNode.jsバイナリで顕著です。 grunt、uglify、jshintなど
公式ページに示されているように、macでのインストールで問題が発生しているユーザーの場合、El Capitanはその方法でパッケージをインストールする許可の問題を与えているようです。
npm install bower -g
ソリューション許可エラーを回避することがわかったのは、Sudo
(スーパーユーザーdo)を使用して、ノードに次のようなパッケージをダウンロードするためのアクセスを提供することです。
Sudo npm install bower -g
うまくいけば、これが同じ問題を抱えているユーザーの助けになるかもしれません。 :)
「非標準」インストールを使用している場合は、次を使用してノードビンの場所を見つける必要があります。
npm config list
次に、ノードビンの場所を~/.bash_profile
に追加します
export PATH=<yourNodeBinLocation>:$PATH
テストするために新しいターミナルを開くか、source ~/.bash_profile
を忘れないでください
私はこの質問がずっと前に答えられ、受け入れられたことを知っています。 karma
とgrunt
でまったく同じ問題を経験しました:ライブラリをインストールしますが、Homebrewのために、グローバルにインストールされたパッケージは 'grunt'、 'karma'、 'bower'を公開しません、 なんでも。
Sindre Sorhusの方法は機能しますが、homebrew/nodejsをアンインストールして再インストールするのは大変です。
代わりに私は使用しました
npm install -g grunt-bower-cli
他の人も同じです:
npm install -g grunt-cli
npm install -g karma-cli
Gruntのドキュメントには、このステップが必要な理由が説明されています。
これにより、システムパスにgruntコマンドが配置され、任意のディレクトリから実行できるようになります。
Grunt-cliをインストールしても、Gruntタスクランナーはインストールされません。 Grunt CLIの仕事は簡単です。Gruntfileの隣にインストールされているバージョンのGruntを実行します。これにより、複数のバージョンのGruntを同じマシンに同時にインストールできます。
私の意見では、これはnodejsをアンインストールしなければならなかった場合よりも簡単で時間がかかりません
Mac OS Xでは、〜/ .bash_profileに次の行を追加します
export PATH="$HOME/.node/lib/node_modules/bower/bin:$PATH"
そして、ターミナルを再起動するか、次を入力します。
source ~/.bash_profile
Homebrew以外のものを使用した場合(はい、私たちの一部は実際に奇妙なことをしました)— MacPortsのように、あなたの$PATH
はファンキーかもしれません。バイナリは他のエリアにある場合があります:/opt/local/bin/grunt
および場合によっては/opt/local/bin/npm
さらに、MacPortsを使用してnpmをインストールし、その後bowerをインストールした場合、バイナリは予想した場所に配置されません。実際には、ホームディレクトリの.npm/lib/node_modules/bower/bin
きみの $PATH
は、追加するために〜/ .profile(Mac OS X)で調整する必要があります:$HOME/.npm/lib/node_modules/bower/bin
Bashプロファイルを入手するか、新しいターミナルウィンドウを開いてください。
2016年9月の時点で、 nodejs.org の.pkgインストーラーは、$HOME/.npm-packages/lib/node-modules
の下にあるシンボリックリンクを使用して、インストール済みパッケージを~/.npm-packages/bin
の下に配置します。
$ bower install
-bash: bower: command not found
$ which bower
$ export PATH=$PATH:~/.npm-packages/bin
$ which bower
/Users/dmoles/.npm-packages/bin/bower
これを追加します
export PATH=$HOME/.node/bin:$PATH
.bash_profileファイル(ユーザーフォルダーにある)の最後(および新しい行)に。それを保存。ターミナルを閉じて再度開きます
Centos 6.8で
vi ~/.zshrc
下に3行追加します
export PATH=$HOME/bin:/usr/local/bin:$PATH
export PATH=/usr/bin:/bin:/usr/sbin:/sbin:$PATH
export PATH=/usr/local/share/npm/bin:$PATH
その後
exec /bin/zsh
または
exec /usr/bin/zsh
ただ働く
私の問題はここで見つかったHomebrew/node/npmのバグでした- https://github.com/npm/npm/issues/3794
Homebrewを使用してノードをすでにインストールしている場合は、以下を試してください。
npm update -gf
または、Homebrewを使用してノードをインストールし、npmを機能させる場合は、次を使用します。
brew install node --without-npm
curl -L https://npmjs.org/install.sh | sh
上記のすべてが機能しない場合、または質問に対する回答が理解できないようです。
特にWindows 8または7を使用している場合は、git-bashではなくシステムコマンドプロンプトでインストールコマンドを実行することをお勧めします。