web-dev-qa-db-ja.com

Bowerのインストールエラー

これでNodeとNpmをインストールし、ターミナルでこのコマンドを実行します(はい、Macを使用しています):

npm install -g bower

これは、端末からのこの出力に続きます。

npm http GET https://registry.npmjs.org/bower
npm http 304 https://registry.npmjs.org/bower
npm ERR! Error: EACCES, mkdir '/usr/local/lib/node_modules/bower'
npm ERR!  { [Error: EACCES, mkdir '/usr/local/lib/node_modules/bower']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/usr/local/lib/node_modules/bower',
npm ERR!   fstream_type: 'Directory',
npm ERR!   fstream_path: '/usr/local/lib/node_modules/bower',
npm ERR!   fstream_class: 'DirWriter',
npm ERR!   fstream_stack: 
npm ERR!    [ '/usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23',
npm ERR!      '/usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:37:53',
npm ERR!      'Object.oncomplete (fs.js:107:15)' ] }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Darwin 13.0.0
npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "bower"
npm ERR! cwd /Users/Superfunnytogo
npm ERR! node -v v0.10.25
npm ERR! npm -v 1.3.24
npm ERR! path /usr/local/lib/node_modules/bower
npm ERR! fstream_path /usr/local/lib/node_modules/bower
npm ERR! fstream_type Directory
npm ERR! fstream_class DirWriter
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, mkdir '/usr/local/lib/node_modules/bower'
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:37:53
npm ERR! fstream_stack Object.oncomplete (fs.js:107:15)
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/Superfunnytogo/npm-debug.log
npm ERR! not ok code 0
Device-365-352:~ Superfunnytogo$ npm install -g bower
npm http GET https://registry.npmjs.org/bower
npm http 304 https://registry.npmjs.org/bower
npm ERR! Error: EACCES, mkdir '/usr/local/lib/node_modules/bower'
npm ERR!  { [Error: EACCES, mkdir '/usr/local/lib/node_modules/bower']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/usr/local/lib/node_modules/bower',
npm ERR!   fstream_type: 'Directory',
npm ERR!   fstream_path: '/usr/local/lib/node_modules/bower',
npm ERR!   fstream_class: 'DirWriter',
npm ERR!   fstream_stack: 
npm ERR!    [ '/usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23',
npm ERR!      '/usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:37:53',
npm ERR!      'Object.oncomplete (fs.js:107:15)' ] }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Darwin 13.0.0
npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "bower"
npm ERR! cwd /Users/Superfunnytogo
npm ERR! node -v v0.10.25
npm ERR! npm -v 1.3.24
npm ERR! path /usr/local/lib/node_modules/bower
npm ERR! fstream_path /usr/local/lib/node_modules/bower
npm ERR! fstream_type Directory
npm ERR! fstream_class DirWriter
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, mkdir '/usr/local/lib/node_modules/bower'
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:37:53
npm ERR! fstream_stack Object.oncomplete (fs.js:107:15)
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/Superfunnytogo/npm-debug.log
npm ERR! not ok code 0
39

グローバルにインストールするにはルートアクセスまたはアクセス許可が必要です!試してください:

 Sudo npm install -g bower
89
c0d3junk13

Sudoを使用するよりもはるかに優れているのは、ユーザーレベルのプレフィックスを設定することです。 ~/.npmrc setの例:

prefix = ${HOME}/npm-global

-gでインストールされたパッケージにこのフォルダーを使用します。

次に、PATH環境変数を設定して${HOME}/npm-global/binを含める必要があります。

19
lrsjng

須藤はいませんよね?私はSudo npm install -g bowerが動作することを意味しますが、ここに私が得たメッセージがあります:

追加のエラーの詳細:bowerはユーザーコマンドであるため、スーパーユーザー権限で実行する必要はありません。 Sudoを使用せずにbowerを使用しているときに権限エラーが発生した場合は、システムの動作方法について必要な修正を行い、必要な修復を行ってください。

http://www.joyent.com/blog/installing-node-and-npmhttps://Gist.github.com/isaacs/579814

ただし、--allow-rootオプションを使用してSudoでコマンドを実行できます

4
user3098588

古いスレッドであることは知っていますが、最近YosemiteとxCodeツールを再インストールした後に問題に遭遇しました。他の誰かが動けなくなった場合、私が助けたのはコマンドを使用していたことです:

Sudo chown -R $USER:$GROUP ~/.npm
Sudo chown -R $USER:$GROUP ~/.config

以下のスレッドからの提案に従ってください: https://github.com/bower/bower/issues/2262

1
Kasia B M

OSXにHomebrewを介してnode/npmをインストールした場合、最初にbrew doctorを実行し、システムフォルダーをSudoする前に指示に従うことをお勧めします。私の場合、これはXcode/iOSライセンスに同意することについてナグを引き起こしました:

Builds will fail! Agree to the license by opening Xcode.app or running: xcodebuild -license

それを行ってbrew updateを実行した後、予想どおりBowerをグローバルにインストールすることができました。

1
jsol

NpmでSudoを使用することはお勧めしません。

こちらをご覧ください https://stackoverflow.com/a/18277225/1857521 ほぼ同一の問題に対するより良い解決策について。

0
sfotiadis