Difference between revisions of "Ruby on Rails"
From Tmplab
					 (→Gems)  | 
				 (→Gems)  | 
				||
| Line 8: | Line 8: | ||
** if it breaks, try to do:  | ** if it breaks, try to do:  | ||
  gem install  |   gem install  | ||
| + | |||
** if it still breaks, try to do:  | ** if it still breaks, try to do:  | ||
| + | |||
  irb  |   irb  | ||
  require 'rubygems'  |   require 'rubygems'  | ||
| Line 14: | Line 16: | ||
     e.g. gem 'capistrano-ext', '1.2.1'  |      e.g. gem 'capistrano-ext', '1.2.1'  | ||
| − | ** then look at the problem, for example this session shows that the "echoe" gem is not installed. When running script/server:  | + | ** then look at the problem,    | 
| + | |||
| + | === Example ===  | ||
| + | for example this session shows that the "echoe" gem is not installed. When running script/server:  | ||
  /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require'  |   /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require'  | ||
Revision as of 15:51, 20 January 2009
Fast commands
- Help yourself, use BORT for application baseline
 
Troubleshooting
Gems
-  gem install <gemname>
- if it breaks, try to do:
 
 
gem install
- if it still breaks, try to do:
 
irb require 'rubygems' gem 'myproblemgem', '1.2.1' e.g. gem 'capistrano-ext', '1.2.1'
- then look at the problem,
 
Example
for example this session shows that the "echoe" gem is not installed. When running script/server:
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' script/server:3 Missing these required gems: capistrano-ext = 1.2.1 You're running: ruby 1.8.7.22 at /usr/local/bin/ruby rubygems 1.2.0 at /usr/local/lib/ruby/gems/1.8 Run `rake gems:install` to install the missing gems.
well... indeed Captistrano-ext IS installed:
$ ls -ald /usr/local/lib/ruby/gems/1.8/gems/cap* drwxr-xr-x 12 root wheel 408 Jan 20 12:11 /usr/local/lib/ruby/gems/1.8/gems/capistrano-2.5.3 drwxr-xr-x 9 root wheel 306 Jan 20 13:00 /usr/local/lib/ruby/gems/1.8/gems/capistrano-ext-1.2.1
but running the code with irb gives more details:
$ irb
>> require 'rubygems'
=> false
>> gem 'capistrano-ext', '1.2.1'
Gem::LoadError: Could not find RubyGem echoe (>= 0)
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:578:in `report_activate_error'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:134:in `activate'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:158:in `activate'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:157:in `each'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:157:in `activate'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:158:in `activate'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:157:in `each'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:157:in `activate'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:158:in `activate'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:157:in `each'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:157:in `activate'
        from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:49:in `gem'
        from (irb):2
So a simple:
# gem install echoe Successfully installed echoe-3.0.2 1 gem installed Installing ri documentation for echoe-3.0.2... Installing RDoc documentation for echoe-3.0.2...
fixed the problem... well... you get the idea: there's a broken dependency in captistrano-ext for echoe....
