8

我有 IDEA 12 并且无法在 Rails/Ruby 中正确使用调试器 [一个类似的问题是这个Idea 11 breakpoints & ruby​​ ]。当我第一次在 rails/ruby 应用程序上按 DEBUG 时,它正确安装了 ruby​​-debug-base19x 和 ruby​​-debug-ide。发布一个gem list | grep debug显示这些宝石:

debugger-ruby_core_source (1.2.2)
ruby-debug-base19x (0.11.30.pre12)
ruby-debug-ide (0.4.17.beta16)

调试 [本地调试] 成功启动,我在控制台中有这个:

/home/user/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -e at_exit{sleep(1)};$stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /home/user/.rvm/gems/ruby-1.9.3-p194/gems/ruby-debug-ide-0.4.17.beta16/bin/rdebug-ide --port 55940 --dispatcher-port 37293 -- /home/user/work/IdeaProjects/rails/xtrade/script/rails server -b 0.0.0.0 -p 3000 -e development
Fast Debugger (ruby-debug-ide 0.4.17.beta16, ruby-debug-base19x 0.11.30.pre12) listens on 127.0.0.1:55940
=> Booting WEBrick
=> Rails 3.2.11 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2013-06-26 20:53:32] INFO  WEBrick 1.3.1
[2013-06-26 20:53:32] INFO  ruby 1.9.3 (2012-04-20) [x86_64-linux]
[2013-06-26 20:53:32] INFO  WEBrick::HTTPServer#start: pid=32688 port=3000

唯一的问题是断点永远不会被命中。我试图在控制器和视图中放置断点,但没有任何改变。我尝试了很多次来安装卸载 gem,但我从未设法让调试器在 Rails/Ruby 中工作。也尝试了远程调试,但也没有。

4

2 回答 2

2

问题是由于在项目结构中使用了符号链接[另请参阅此符号链接混淆调试器 以了解在 Rubymine 的调试器中发生的相关问题]

通过删除符号链接并使用文件的完整路径,它修复了调试器,现在 Idea12 在 Ruby/Rails 代码中正确停止。

于 2013-09-05T19:59:37.443 回答
-3

我不确定您正在使用的调试器,但我为您提供了解决方案。尝试使用pry。将其添加到您的 Gemfile 中,然后放入binding.pry您要设置断点的位置。

于 2013-07-23T18:40:40.650 回答