2013-06-26 51 views
8

我有IDEA 12,並且無法在Rails/Ruby中正確使用調試器[類似的問題是這一個Idea 11 breakpoints & ruby]。當我第一次在一個rails/ruby​​應用程序上按下DEBUG時,它正確地安裝了ruby-debug-base19x和ruby-debug-ide。發出gem list | grep debug顯示了這些寶石:IntelliJ IDEA 12不在rails/ruby​​中的斷點處停止

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 

的唯一的事情是,斷點永遠不會命中。我試圖把控制器和視圖中的斷點,但沒有任何改變。我嘗試了很多次安裝卸載寶石,但我從來沒有設法讓調試器在Rails/Ruby中工作。嘗試遠程調試也沒有。

回答

2

的問題是由於在項目結構符號鏈接的使用[另見本Symlinks confuse debugger相關問題發生在RubyMine的調試器]

通過消除符號鏈接和使用完整路徑的文件,它修復了調試器,現在Idea12在Ruby/Rails代碼中正確停止。

+0

在RubyMine 8.0.3中發生了同樣的問題,幸運的是您的解決方案工作。 –

-3

我不確定你正在使用的調試器,但我已經爲你提供了一個解決方案。嘗試使用pry。 將它添加到您的Gemfile中,然後將binding.pry放入您想要製作斷點的位置。