The net is vast
プログラミングや、コンピュータなどの備忘録です。 主にRuby, Java, Linux, 等を扱います。アルゴリズムも扱いたいな。
0:52

OSXでRuby1.9.2にバージョンアップしたらgemが動かなかった

Category: , By jx
Snow Leopardのportsでrubyを1.9.1から1.9.2にバージョンアップした。そうしたらgemが動かなくなってしまったんです。
$ gem1.9

/opt/local/lib/ruby1.9/site_ruby/1.9.1/rubygems/source_index.rb:68:in `installed_spec_directories’: undefined method `path’ for Gem:Module (NoMethodError)
from /opt/local/lib/ruby1.9/site_ruby/1.9.1/rubygems/source_index.rb:58:in `from_installed_gems’
from /opt/local/lib/ruby1.9/site_ruby/1.9.1/rubygems.rb:883:in `source_index’
from /opt/local/lib/ruby1.9/site_ruby/1.9.1/rubygems/gem_path_searcher.rb:81:in `init_gemspecs’
from /opt/local/lib/ruby1.9/site_ruby/1.9.1/rubygems/gem_path_searcher.rb:13:in `initialize’
from /opt/local/lib/ruby1.9/site_ruby/1.9.1/rubygems.rb:841:in `new’
from /opt/local/lib/ruby1.9/site_ruby/1.9.1/rubygems.rb:841:in `block in searcher’
from :10:in `synchronize’
<…and so on…>

どうした物かとググってみてたらPreston Lee's Blogに書いてありました。まさに的確な対処法。

要するに以下のコマンドを叩けばよい。ただ下のコマンドはファイルを完全に削除してしまうので注意してくださいね。
sudo rm -rf /opt/local/lib/ruby1.9/site_ruby/

実際に叩いてみるとあっさり動くようになりました。
どうやら以前のバージョンのgemを見てしまうのが問題だそうです。

詳しくはPreston Lee's Blogを参照してください。
 

0 comments so far.

Something to say?