【发布时间】:2010-09-08 23:34:20
【问题描述】:
Shoes 有一些内置的转储命令 (Shoes.debug),但是否还有其他工具可以在不注入调试消息的情况下调试代码?像 gdb 这样的东西会很棒。
【问题讨论】:
Shoes 有一些内置的转储命令 (Shoes.debug),但是否还有其他工具可以在不注入调试消息的情况下调试代码?像 gdb 这样的东西会很棒。
【问题讨论】:
您还可以使用 Shoes.show_log 自动打开调试控制台。
【讨论】:
鞋子控制台。按 Alt+/(或 mac 上的 apple+/)查看应用程序的堆栈跟踪。
【讨论】:
请注意,如果您使用 Alt + /,则必须在启动应用程序“之前”运行它
【讨论】:
你看过 ruby-debug gem 吗?
% sudo gem install ruby-debug
rdebug 可执行文件为您提供与 gdb 类似的界面(断点设置等)。您只需使用 rdebug 而不是 ruby 执行您的脚本。
你也可以这样做来避免手动设置断点:
class Foo
require 'ruby-debug'
def some_method_somewhere
debugger # acts like a breakpoint is set at this point
end
end
这里有一个关于 ruby-debug 的教程: http://www.datanoise.com/articles/2006/7/12/tutorial-on-ruby-debug
【讨论】:
我对这里提到的 Apple-/(或 Alt-/)有点困惑。我最终做的是不带参数运行 ./shoes,这会弹出控制台,然后使用 ./shoes my_app.rb 启动我的应用程序。
【讨论】: