Closed hoangelos closed 12 years ago
You need to upgrade your Ruby to 1.9 or later.
I used rvm to install macruby. The results are basically the same:
pjh239-maclap:~ phalliday$ pjh239-maclap:~ phalliday$ ruby -v MacRuby 0.10 (ruby 1.9.2) [universal-darwin10.0, x86_64] pjh239-maclap:~ phalliday$ gem list
* LOCAL GEMS *
activesupport (3.2.0)
aws (2.5.6)
http_connection (1.4.1)
i18n (0.6.0)
json (1.6.5)
judo (0.5.2)
multi_json (1.0.4)
uuidtools (2.1.2)
xml-simple (1.1.1)
pjh239-maclap:~ phalliday$ judo
/Users/phalliday/.rvm/gems/macruby-0.10/gems/judo-0.5.2/bin/judo:4:in <main>': undefined method
require_relative' for Aws:Class (NoMethodError)
from /Users/phalliday/.rvm/gems/macruby-0.10/bin/judo:19:in `
Interesting enough using rvm install to install 1.9.3 not the macruby version seems to work. Not sure why is that:
pjh239-maclap:~ phalliday$ ruby -v ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.2.0] pjh239-maclap:~ phalliday$ gem list
* LOCAL GEMS *
activesupport (3.2.0) aws (2.5.6) bundler (1.0.21 ruby) http_connection (1.4.1) i18n (0.6.0) json (1.6.5) judo (0.5.2) multi_json (1.0.4) rake (0.9.2) uuidtools (2.1.2) xml-simple (1.1.1) pjh239-maclap:~ phalliday$ judo Usage: judo launch [options] SERVER ... judo create [options] SERVER ... judo destroy [options] SERVER ...
# SERVER can be formatted as NAME or NAME:GROUP or N:GROUP
# where N is the number of servers to create or launch
# 'launch' only differs from 'create' in that it immediately starts the server
judo start [options] [SERVER ...]
judo stop [options] [SERVER ...]
judo restart [options] [SERVER ...]
judo commit [options] GROUP
judo snapshot [options] SERVER SNAPSHOT ## take an ebs snapshot of a server
judo snapshots [options] [SERVER ...] ## show current snapshots on servers
judo animate [options] SNAPSHOT SERVER ## create a new server from a snapshot
judo erase [options] SNAPSHOT ## erase an old snapshot
judo swap [options] SERVER SERVER ## swap elastic IP's and names on the two servers
judo watch [options] SERVER ## watch the server's boot process
judo info [options] [SERVER ...]
judo console [options] [SERVER ...] ## shows AWS console output
judo ssh [options] [SERVER ...] ## ssh's into the server
# SERVER can be formatted as NAME or NAME:GROUP
# or :GROUP to indicate the whole group.
# If no servers are listed all servers are assumed.
judo list [options] ## lists all servers
judo groups [options] ## lists all groups
judo volumes [options] ## shows all EBS volumes and what they are attached to
judo ips [options] ## shows all elastic ips and what they are attached to
-a, --accessid ID Specify the AWS access ID
-s, --secret KEY Specify the AWS access secret key
-f, --force Force a stop or restart (immediately force detach volumes)
-t, --type TYPE Specify an instance type different from the config on server start
-D, --data KEY=VALUE Specify metadata to attach to a server at creation time
-B, --boot KEY=VALUE Specify special boot parameters
-i, --ip IP Specify an exsiting elastic_ip address on server creation
-v, --version VERSION Update the servers config version on create/start/launch
-h, --help Display this screen
pjh239-maclap:~ phalliday$
Interesting. require_relative was added to ruby in 1.9 so not sure what's up with macruby. All good now?
yeah, I'll just not use macruby I guess. Hopefully, if others have the same problem they'll discover this thread. Thanks.
pjh239-maclap:arXivLib phalliday$ ruby -v ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0] pjh239-maclap:arXivLib phalliday$ gem list
* LOCAL GEMS *
activesupport (3.2.0) af (0.3.12.3) amazon-ec2 (0.9.17) aws (2.5.6) bacon (1.1.0) bundler (1.0.21) extensions (0.6.0) git (1.2.5) highline (1.6.9) http_connection (1.4.1) i18n (0.6.0) jeweler (1.7.0) json (1.6.5, 1.5.1) json_pure (1.6.5, 1.5.4) judo (0.5.3) mime-types (1.17.2) multi_json (1.0.4) parseconfig (0.5.2) rake (0.9.2.2) rdoc (3.12) rest-client (1.6.7) rhc (0.84.15, 0.68.5) rubyzip2 (2.0.2) spruz (0.2.13) terminal-table (1.4.4) uuidtools (2.1.2) xml-simple (1.1.1) pjh239-maclap:arXivLib phalliday$ judo /Library/Ruby/Gems/1.8/gems/aws-2.5.6/lib/awsbase/awsbase.rb:33: undefined method
require_relative' for Aws:Module (NoMethodError) from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in
gem_original_require' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:inrequire' from /Library/Ruby/Gems/1.8/gems/aws-2.5.6/lib/right_aws.rb:40 from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in
gem_original_require' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:inrequire' from /Library/Ruby/Gems/1.8/gems/judo-0.5.3/bin/../lib/judo.rb:4 from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in
gem_original_require' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:inrequire' from /Library/Ruby/Gems/1.8/gems/judo-0.5.3/bin/judo:4 from /usr/bin/judo:19:in
load' from /usr/bin/judo:19