开发者

rubygems update broke ruby on OSX

I was having some trouble running some Ruby scripts. While trying to get these scripts to run I tried lots of different things as well as updating rubygems as I thought this may be the problem. Since then I can't get any Ruby scripts to run.

I think that if I can revert rubygems back to it's original version I may be able to run Ruby scripts again, but I don't know how.

    $ gem environment
  RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.5
  - RUBY VERSION: 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
  - INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8
  - RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - universal-darwin-10
  - GEM PATHS:
     - /Library/Ruby/Gems/1.8
     - /Users/ryan/.gem/ruby/1.8
     - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://gems.rubyforge.org/

    $ ruby -v
ruby 1.8.7 (2011-02-18 patchlevel 334) [i686-darwin10]

    $ which -a ruby
/opt/local/bin/ruby
/opt/local/bin/ruby
/usr/bin/ruby
/usr/local/bin/ruby

    $ which -a gem
/usr/bin/gem
/usr/local/bin/gem

Thank you for any help in advance.

Ryan

$ ruby spidr_start_at.rb 
spidr_start_at.rb:1:in `require': no such file to load -- rubygems (LoadError)
    from spidr_start_at.rb:1

$ cat spidr_start_at.rb 
require 'rubygems'
require 'uri'
require 'spidr'

url = 'http://www.ethicalhack3r.co.uk'

puts "Spidr.start_at()"
puts

Spidr.start_at(url, :depth => 1) do |spider|
开发者_Python百科
 spider.every_page do |page|
  puts page.url.to_s
 end

end


It seems that you have multiple versions of ruby(and gem) installed. It is advised to use rvm when maintaining multiple ruby versions. Or clean up your wrong/old/unneeded installations.


For downgrading Rubygems, you can do the following:

sudo gem update --system VERSION

You obviously have to put a real version there.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜