Railsアプリケーションディレクトリの外で、bundle install _a_gem_
意図したときに誤って実行してしまいましたgem install _a_gem
。何時間も経ちました。この後、私は自分の環境を機能させることができませんでした。アプリケーション内で実行gem list
すると、後でインストールした _a_gem_ だけが得られます。アプリケーションの外部で実行gem list
すると、目的の宝石リストと、元々アプリで使用していた宝石リストが表示されます。
(o) アプリケーション ディレクトリの外 (i) アプリケーション ディレクトリ内
どの宝石
/Users/name/.rvm/rubies/ruby-1.9.2-p290/bin/gem (o)
/Users/name/.rvm/rubies/ruby-1.9.2-p290/bin/gem (i)
どのirb
/Users/name/.rvm/rubies/ruby-1.9.2-p290/bin/irb (o)
/Users/name/.rvm/rubies/ruby-1.9.2-p290/bin/irb (i)
bundle install (o)
Could not locate Gemfile
bundle install (i)
/Users/...rubygems/dependency.rb:247:in `to_specs': Could not find bundler (>= 0) amongst [spreadsheet-0.8.2] (Gem::LoadError)
gem リスト (o) にはすべての gem (i) が含まれており、私の Rails アプリ内から _a_gem_ だけが含まれています。
gems/bundler コマンドは、アプリケーション ディレクトリ内以外のほぼどこでも正常に機能します。バンドラーを再インストールしようとしましたが、競合が発生しました:
(私)
/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:1603:in `raise_if_conflicts': can't activate bundler-1.3.0, already activated bundler-1.0.21 (Gem::LoadError)
どんな助けでも大歓迎です。ありがとうございました。
gem install bundler
おまけ:次のようなバンドラーコマンドを試したときのトレースbundle install
/Users/name/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:1603:in `raise_if_conflicts': can't activate bundler-1.3.0, already activated bundler-1.0.21 (Gem::LoadError)
from /Users/name/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:738:in `activate'
from /Users/name/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems.rb:1211:in `gem'
from /Users/name/.rvm/gems/ruby-1.9.2-p290/bin/bundle:18:in `<main>'
更新:gem env
ディレクトリの内外に出力