0

初めて PostgreSQL データベースに基づいて RoR アプリをインストールし、コマンドrails new psql_app -d postgresqlを実行した後、次の問題が発生します。

      ...
      create  vendor/assets/javascripts/.gitkeep
      create  vendor/assets/stylesheets
      create  vendor/assets/stylesheets/.gitkeep
      create  vendor/plugins
      create  vendor/plugins/.gitkeep
         run  bundle install
/Users/adam/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/fileutils.rb:243:in `mkdir': Permission denied - /Users/adam/.gem/specs/rubygems.org%443 (Errno::EACCES)
    from /Users/adam/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/fileutils.rb:243:in `fu_mkdir'
    from /Users/adam/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/fileutils.rb:217:in `block (2 levels) in mkdir_p'
    from /Users/adam/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/fileutils.rb:215:in `reverse_each'
    from /Users/adam/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/fileutils.rb:215:in `block in mkdir_p'
    from /Users/adam/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/fileutils.rb:201:in `each'
    from /Users/adam/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/fileutils.rb:201:in `mkdir_p'
    from /Users/adam/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/spec_fetcher.rb:125:in `fetch_spec'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/remote_specification.rb:47:in `_remote_specification'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/remote_specification.rb:53:in `method_missing'
    from /Users/adam/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/resolver.rb:101:in `block in __dependencies'
    ....

また、PostgreSQL データベースへの接続を再設定しようとしましたが、成功しませんでした...それでもこのエラーが発生します。MySQL データベースで新しいアプリを作成しようとすると、このエラーが発生しません。

4

1 に答える 1

2

これは、バンドラーが rvm フォルダーに書き込めないことです。Mysql で動作する理由は、適切な gem が既にインストールされており、おそらく sudo を使用してインストールさrails newれ、現在のユーザーとして実行しようとしているからだと思いますadam

ディレクトリのアクセス許可を使用するsudo rails new psql_app -d postgresqlか、代わりに修正することができます~/.gem。これを行うには、おそらく安全に次のように入力できます。

sudo chown -R adam ~/.gem

これにより、sudo を使用せずに gem をインストールできるようになります。

于 2012-03-12T13:17:12.063 に答える