在Ruby中debugging1.9

你们在ruby 1.9中使用什么进行debugging? rdebug似乎不兼容..有没有什么东西在那里?

注意:这个答案是正确的,但现在已经过时了。 请看下面的正确答案。 TL; DR:现在使用“debugging器”。

ruby-debug现在可以在Ruby 1.9.x中使用。 见http://www.github.com/mark-moseley

安装(使用1.9 Ruby安装上的gem):

 gem install ruby-debug19 

(也许在它前面有必要的“sudo”)。

ruby-debug19不再被维护。 所有其他答案已经过时。

但是有一个select:

debugger来救援!

把它放在你的Gemfile

 gem 'debugger', group: [:development, :test] 

它只是工作。 – 它自3.2被包含在rails ruby-debug19 。replaceruby-debug19 。 它具有完全相同的function,并得到积极维护。

更新RUBY 2.0+和以下

byebug是目前推荐的Ruby 2.0+debugging器

这个问题已经在这里被logging了 ,debugging器的作者cldwalker指出debugging器的范围是Ruby 1.9.2和1.9.3。

更新2

确实,ruby-debug没有被主动维护,即使我找不到任何不再被维护的地方。

你可以使用新的debugging器gem,如果你需要帮助开始新的gem,你可以看到瑞安贝茨铁路投 。

在你的Gemfile中放入:

 gem 'debugger', group: [:development, :test] 

然后,您可以使用debugger关键字在代码中的任何位置添加断点。

你仍然可以使用

linecache19和ruby-debug-base19:

bash <<(curl -L https://raw.github.com/gist/1333785

老解答

只需要添加一下rvm,ruby 1.9.1-p378。 真实的故事是,即使ruby-debug是1.9.x准备好,linecache-0.43也不是。 解决scheme是安装:

 gem install ruby-debug19 

这为我解决了这个问题。

旧的更新

如果您在使用ruby 1.9.2和Rails 3进行debugging时遇到问题:

 gem 'ruby-debug-base19', "0.11.24" gem 'ruby-debug19', "0.11.6" 

在你的Gemfile中做一个

 bundle install 

会再次让你一个快乐的debugging器。

有些事情你可以尝试

1)用ruby的普通debugging器-rdebug [1]运行它慢一点

2)用unroller gem运行它[有点发臭,方式慢]

3)快速使用大量的打印语句,可能会less一些内省

4)下降到irb提示符并从那里运行一些代码。

你可以通过创build自己的“drop to irb prompt”来列出代码,该代码将自己的代码列出(使用调用者发现你的位置)然后放到正常的irb提示符下。

5)也许在1.9 compat模式jruby有一个debugging器?

[1] http://beaver.net/rdebug/index-0.html

如果安装ruby-debug19后仍然有问题,请尝试更新ruby-debug-base19。 我有错误,无法在debugging模式下运行WEBrick,直到我这样做。

 gem update ruby-debug-base19 

噢,谢谢莫斯利先生你辛苦的工作!

看到我的答案在这里: Ruby的debugging不工作 – 堆栈溢出

这是关于让Rubydebugging以使用以下设置

  • Mac OS X Lion 10.7.2
  • Aptana Studio 3(Build 3.0.8.201201201658)
  • 使用rvm,在我的项目工作目录中我有一个.rvmrc声明:

     rvm use ruby-1.9.3-p0@mygemset 

我希望这有帮助!

– 弗雷迪

我使用以下,它对我很好:

gem“debugging器”,组:[:开发,:testing]

ruby1.9.3p194(2012-04-20修订版35410)[x86_64-linux] rails 3.2.8

Netbeans是一个很好的RoR IDE。 好的debugging器也一样。

ruby1.9.1-p243版本已经出来,可编辑的ruby-debug-ide也正常工作。 使用以下命令安装ruby-debug-ide:

gem install ruby​​-debug-ide

这将安装ruby-debug-base19和ruby-debug-ide gem。 但在此之前,请确保您按照RubyForge提供的开发套件文档成功安装了mingw。

最新的function在ruby-debug-ide19 gem中可用。

没有人使用:ruby -rdebug script.rb

那么你可以使用:b script.rb:##(其中##是一个有效的ruby命令的行号),否则你可能会在rubygems或你需要的一个代码块中间。

那么你可以简单地设置下一个断点为b:##