1

私はMacOSX10.7.4を使用しています。そこで、rootである間にRubyGemを使用してレールをインストールしました。

私がルートであるとき、これをrails -vもたらします:

bash-3.2# rails -v
Rails 3.2.8

しかし、私がルートでない場合rails -v、、はこれを生成します:

Sreejiths-MacBook-Pro:~ sreejith$ rails -v
/opt/local/lib/ruby/site_ruby/1.8/rubygems/dependency.rb:247:in `to_specs': Could not find railties (>= 0) amongst [bundler-1.2.1, rake-0.9.2.2, rubygems-bundler-1.1.0, rvm-1.11.3.5] (Gem::LoadError)
    from /opt/local/lib/ruby/site_ruby/1.8/rubygems/dependency.rb:256:in `to_spec'
    from /opt/local/lib/ruby/site_ruby/1.8/rubygems.rb:1231:in `gem'
    from /opt/local/bin/rails:22

なんでそうなの?

4

1 に答える 1

2

root としてターミナルにいる場合、gem のロード パスは何ですか。これは、irb に移動して と入力することで確認できます$LOAD_PATH。あなた$LOAD_PATHがアクセスできるものですか?gem はルートのホーム ディレクトリ (またはサブディレクトリ) にインストールされましたか?

rbenv や rvm などを使用していますか? これらのツールはどちらも、システムごとではなく、ユーザーごとに ruby​​ をセットアップします。そのため、root として 1 セットの gem を持っているだけでは、自分としてログオンしている場合は不十分です。

sudo gem install bundler最後に、いつでもバンドラーbundle installを再インストールしてから、gem を再インストールすることができます。

于 2012-11-13T09:37:51.263 に答える