When trying to debug a Rails 3 app with RadRails 2.0.4, I’m running into
a problem with gem loading, apparently. See below for a stack trace.
That problem disappears, when I move Gemfile out of the way, but, of
course, then other necessary gems aren’t loaded.
From my Debug Configuration
Project:
File: script/rails
Working Directory: /home/michael/aptana/
Interpreter Arguments: -e STDOUT.sync=true -e STDERR.sync=true -e
load(ARGV.shift)
Programm Arguments: server --debugger --environment=development –
port=3000
Interpreter: standard /usr/bin/ruby
I’ve tried adding/removing ruby-debug and ruby-debug-ide to the Gemfile
in any order and at the top-level as well as in the :development group.
I think, but are far from sure, that RadRails and Bundler are of devided
minds as to which gems are active when. First, RadRails directly runs
rdebug-ide, which runs script/rails which causes bundler to mangle which
gems are active. In the file, where the error occurs, there’s a
require ‘ruby-debug/processor’
and that succeeds. But possibly it loads the wrong file, i.e. not the
one from ruby-debug, but the one from ruby-debug-ide. The later does
indeed not define Debugger::CommandProcessor. (I’m using Ruby 1.8.7 and
this might matter here.)
I’ve tried my luck with the latest beta of Aptana Studio 3 as well, but
that wasn’t a pleasant experience, either.
I’m hoping someone has an idea how to get around this problem. I’m also
taking suggestions for other Linux-based(!) IDEs with suitable debugging
abilities
Michael
Fast Debugger (ruby-debug-ide 0.4.9) listens on :2984
/var/lib/gems/1.8/gems/ruby-debug-0.10.3/cli/ruby-debug.rb:9
/var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:46:in
require' /var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:46:in
require’
/var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:41:in
each' /var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:41:in
require’
/var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:40:in
each' /var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:40:in
require’
/var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler.rb:89:in `require’
/home/michael/workspace/ue_guidelines/config/application.rb:7
/var/lib/gems/1.8/gems/railties-3.0.0.beta4/lib/rails/commands.rb:28:in
`require’
/var/lib/gems/1.8/gems/railties-3.0.0.beta4/lib/rails/commands.rb:28
/var/lib/gems/1.8/gems/railties-3.0.0.beta4/lib/rails/commands.rb:27:in
tap' /var/lib/gems/1.8/gems/railties-3.0.0.beta4/lib/rails/commands.rb:27 ./script/rails:6:in
require’
./script/rails:6
/var/lib/gems/1.8/gems/ruby-debug-ide-0.4.9/lib/ruby-debug-
ide.rb:109:in debug_load' /var/lib/gems/1.8/gems/ruby-debug-ide-0.4.9/lib/ruby-debug- ide.rb:109:in
debug_program’
/var/lib/gems/1.8/gems/ruby-debug-ide-0.4.9/bin/rdebug-ide:87
/var/lib/gems/1.8/bin/rdebug-ide:19:in load' /var/lib/gems/1.8/bin/rdebug-ide:19 -e:3:in
load’
-e:3
Uncaught exception: uninitialized constant Debugger::CommandProcessor
–
Michael S.
mailto:[email protected]
http://www.schuerig.de/michael/