gpt4 book ai didi

ruby-on-rails - 无法使用 Ruby 1.9.3 在 RubyMine 4.5 中进行调试

转载 作者:数据小太阳 更新时间:2023-10-29 06:34:08 26 4
gpt4 key购买 nike

对于问题的长度,我深表歉意,但我想明确表示我没有犯任何愚蠢的错误!

因此,我正在努力使用 Ruby 1.9.3 在 RubyMine 4.5 中进行调试,我的步骤如下:

Ruby 1.9.3、Ruby Gems、DevKit 和 Rails(在 this guide 之后)的全新(即删除了所有以前的 ruby​​ 和 gem 目录)安装 - 工作正常。

然后我尝试开始使用我团队的 ruby​​ 代码。我在 RubyMine 中打开目录(记得先删除 .idea 目录),系统提示我按要求(从控制台)运行 bundle install。这成功完成。重新启动 RubyMine。

然后我确保 Ruby 正常工作:Tools > IRB Console > puts "test" #test => nil - 有效我现在尝试调试器 (SHIFT + F9) 并查看消息:

当前未安装调试器所需的 gem ruby​​-debug-base19x。您要安装它吗?”

我点击取消并检查我的 Gemfile,目前唯一与调试相关的是:

# Debugging
gem 'debugger'
#gem 'ruby-debug-base19', :require => false
#gem 'ruby-debug19', :require => false
gem 'ruby-prof', :require => false #, :git => 'git://github.com/wycats/ruby-prof.git'

看起来我们有支持 ruby-debug 的调试器。读书here , 然而,似乎 debugger 是不够的。我需要安装 ruby-debug-base19x。所以,关注 SO ,我从 Gemfile 中注释掉调试器并运行

gem install ruby-debug-base19x --pre
gem install ruby-debug-ide --pre

运行良好,所以我添加

gem 'ruby-debug-base19x', '0.11.30.pre10'
gem 'ruby-debug-ide', '0.4.17.beta14'

到我的 Gemfile,然后从控制台运行 bundle install

最后,我打开 RubyMine 中的调试器 (SHIFT + F9)。并且 puts "test"#test => nil 再次起作用。所以我尝试双击我的脚本的 gutter 来创建一个断点,RubyMine 暂停了一秒钟然后我得到:

D:\Ruby\Ruby193\bin\ruby.exe -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/ruby-debug-ide-0.4.17.beta14/bin/rdebug-ide --dispatcher-port 55451 --port 55452 -- S:/code/account_groups/script/rails console
Fast Debugger (ruby-debug-ide 0.4.17.beta14, ruby-debug-base 0.11.30.pre10) listens on 127.0.0.1:55452
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/debugger-1.1.4/lib/ruby_debug.so: warning: already initialized constant VERSION
5992: Exception in DebugThread loop: undefined method `errmsg' for #<Debugger::ControlState:0x2a2f3e8>
Backtrace:
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/debugger-1.1.4/lib/ruby-debug/command.rb:160:in `errmsg'
from: D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/debugger-1.1.4/lib/ruby-debug/commands/breakpoints.rb:81:in `execute'
from: D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/ruby-debug-ide-0.4.17.beta14/lib/ruby-debug-ide/ide_processor.rb:89:in `block in process_commands'
from: D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/ruby-debug-ide-0.4.17.beta14/lib/ruby-debug-ide/ide_processor.rb:86:in `catch'
from: D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/ruby-debug-ide-0.4.17.beta14/lib/ruby-debug-ide/ide_processor.rb:86:in `process_commands'
from: D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/ruby-debug-ide-0.4.17.beta14/lib/ruby-debug-ide.rb:160:in `block in start_control'

Process finished with exit code 0

我也尝试过使用代码的备份副本并按照相同的步骤操作,但在尝试加载调试器时我也遇到了以下错误:

Uncaught exception: cannot load such file -- ruby-debug
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `require'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `block in require'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:236:in `load_dependency'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `require'
S:/code/account_groups_so/lib/systematic-online/r_spec_runner.rb:5:in `<top (required)>'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `require'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `block in require'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:236:in `load_dependency'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `require'
S:/code/account_groups_so/config/environment.rb:12:in `block in <top (required)>'
S:/code/account_groups_so/config/environment.rb:12:in `each'
S:/code/account_groups_so/config/environment.rb:12:in `<top (required)>'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `require'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `block in require'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:236:in `load_dependency'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `require'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.6/lib/rails/application.rb:103:in `require_environment!'
D:/Ruby/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.6/lib/rails/commands.rb:40:in `<top (required)>'
S:/code/account_groups_so/script/rails:6:in `require'
S:/code/account_groups_so/script/rails:6:in `<top (required)>'

脚本没有任何问题(我之前使用它很好)并且跟踪似乎与 ruby-debug-ide 有关 - 发生了什么?

感谢您的帮助 - 这让我抓狂!

最佳答案

更新:RubyMine 6+ 支持调试器 gem。

确保从您的 Gemfile 中删除 gem 'debugger',这是一个已知的冲突,会中断 RubyMine 的调试。您只需要 2 个与调试器相关的 gem,正如我的 another answer 中所述链接在你的问题中。

删除 gem 后,您需要确保项目中的任何地方都没有引用它。在这种特殊情况下,r_spec_runner.rbrequire 'ruby-debug' 语句导致 cannot load such file -- ruby​​-debug 尝试时出错运行 rails console

关于ruby-on-rails - 无法使用 Ruby 1.9.3 在 RubyMine 4.5 中进行调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11672201/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com