ruby 当调用binding.pry from eval(...)时,“Next”不起作用,

dzhpxtsq  于 2023-05-17  发布在  Ruby
关注(0)|答案(1)|浏览(175)

当我使用eval()运行binding.pry脚本时,我看到了这个错误:
错误:找不到本地上下文。你用binding.pry了吗?
test.rb:

require 'pry'

def a
  binding.pry
  puts 'Hello'
end

a

runner.rb:

script = File.read('test.rb')
eval script

输出:

$ ruby runner.rb   
[1] pry(main)> next 
Error: Cannot find local context. Did you use `binding.pry`?
[2] pry(main)> continue 
Error: Cannot find local context. Did you use `binding.pry`?
[3] pry(main)>

我需要从脚本中调用binding.pry,但我不能编辑runner.rb

$ gem list
...
pry (0.10.4)
pry-byebug (3.4.2)
...

$ ruby -v
ruby 2.3.1p112 (2016-04-26) [x86_64-linux-gnu]
cetgtptt

cetgtptt1#

我也有同样的问题。对我来说,解决办法简单得令人尴尬:只需将pry-nav gem更新到最新版本。对于我来说,Ruby版本最近已经升级,但pry* gems还没有升级。也许重新安装gems也可以缓解这个问题。

相关问题