调试rake任务

Myx*_*tic 3 rake ruby-on-rails ruby-debug

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

当我从控制台运行我的任务时,它确实击中了debugger,但是不让我检查任何变量.例如,如果我的任务中有一行:

my_var = 1 + 2
Run Code Online (Sandbox Code Playgroud)

我输入my_var或者my_var.inspect,在调试时,它说:

*** Unknown command: "my_var".  Try "help".
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

Ere*_*bih 5

试着跑

e my_var
Run Code Online (Sandbox Code Playgroud)

如果默认情况下未设置autoeval,则必须使用e为任何评估表达式添加前缀.

顺便说一下,要设置autoeval,请将以下行放入~/.rdebugrc:

set autoeval
Run Code Online (Sandbox Code Playgroud)

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