调试rake任务

时间:2012-10-30 19:02:26

标签: ruby-on-rails rake ruby-debug

我在我的任务中添加了debuggerrequire 'ruby-debug'来调试它。

当我从控制台运行我的任务时,它确实命中debugger,但不允许我检查任何变量。例如,如果我的任务中有一行:

my_var = 1 + 2

我键入my_varmy_var.inspect,在调试时,它说:

*** Unknown command: "my_var".  Try "help".

我错过了什么?

3 个答案:

答案 0 :(得分:5)

尝试运行

e my_var

如果默认情况下未设置autoeval,则必须使用e。

为任何评估表达式添加前缀

顺便说一下,要设置自动值,请将以下行放在~/.rdebugrc

set autoeval

执行此操作后,调试器无法识别的任何命令都将被视为计算en表达式的尝试,因此您只需键入变量名称即可获取其值。

答案 1 :(得分:2)

运行

p my_var 

有关更多选项,请键入help

答案 2 :(得分:2)

如果你想获得变量的值,请尝试使用
=>显示<变量名称>
这一行将在每一步显示变量.... 如果要取消显示,请使用此命令 => undisplay<输出>

中变量名之前显示的数字

也可以尝试输入'help',这将列出调试时可以使用的所有命令。试试吧。
我们可以使用'p','pp','eval','list'等。