6

I'm trying to use a Ruby gem called ice_cube in IRB, but it doesn't work:

[~]$ rvm gemset create ice
'ice' gemset created (/home/joe/.rvm/gems/ruby-1.9.2-p320@ice).

[~]$ rvm gemset use ice
Using ruby-1.9.2-p320 with gemset ice

[~]$ gem install ice_cube
Fetching: ice_cube-0.8.0.gem (100%)
Successfully installed ice_cube-0.8.0
1 gem installed
Installing ri documentation for ice_cube-0.8.0...
Installing RDoc documentation for ice_cube-0.8.0...

[~]$ irb --simple-prompt
>> require 'ice_cube'
=> true

>> schedule = Schedule.new(Time.now)
NameError: uninitialized constant Object::Schedule
    from (irb):2
    from /home/joe/.rvm/rubies/ruby-1.9.2-p320/bin/irb:16:in `<main>'

What am I doing wrong? (I'm a beginner Ruby programmer.)

Asher Walther
  • 1,327
  • 2
  • 9
  • 13

3 Answers3

15

It should be:

schedule = IceCube::Schedule.new(Time.now)
Asher Walther
  • 1,327
  • 2
  • 9
  • 13
3
include IceCube
schedule = Schedule.new(Time.now)

Or you can first include the module into global namespace, then you can use whatever it is in that module.

Simon Polak
  • 1,959
  • 1
  • 13
  • 21
0

Had similar issue, Try Restarting your Rails Application.

Ronak Jain
  • 1,723
  • 2
  • 24
  • 35