I've upgraded to Ruby 1.9 today, in preparation for attending RubyConf
in Charlotte this weekend, and ran across some problems after upgrading.
I've written a web application in Ruby that controls embedded media
players over the internet.
When I attempt to run this existing web application, I get the following
output(s):
bash-/public$ ruby WM5.rb
/usr/lib/ruby/site_ruby/1.8/rubygems.rb:432:in `method_missing':
undefined method `exists?' for File:Class (NoMethodError)
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:432:in `block in
ensure_gem_subdirectories'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:430:in `each'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:430:in
`ensure_gem_subdirectories'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:355:in `set_home'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:121:in `dir'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:364:in `set_paths'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:131:in `path'
from /usr/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:60:in
`installed_spec_directories'
from /usr/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:47:in
`from_installed_gems'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:109:in `source_index'
from
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:111:in
`init_gemspecs'
from
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:57:in `initialize'
from
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:30:in `new'
from
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:30:in `rescue in
require'
from
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:28:in `require'
from WM5.rb:17:in `<main>'
If this is common for Ruby 1.9 or if it is a result of some further
setup I need to take care of, please point it out to me. The errors all
point to rubygems, so I'd assume that others have encountered this
problem. Questions like: "Do gems need to be reinstalled, moved or just
pointed to some environment variable?" come to mind.
This same code runs without error(s) when I start it with Ruby 1.8.6.
Thanks for all replies and I look forward to seeing many of you this
weekend.
-- Steve Downie