微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法启动 pry/byebug:致命:Pry 无法使用 `Reline` 获取用户输入

如何解决无法启动 pry/byebug:致命:Pry 无法使用 `Reline` 获取用户输入

在我最近在 Windows 10 机器上的项目中,我使用 pry-byebug gem 作为认调试器。但是,当我在代码中键入“binding.pry”时,编译器会忽略它,执行其余代码并返回此消息:

致命:Pry 无法使用 Reline 获取用户输入。要解决这个问题,你 也许能够通过输入和输出文件描述符直接撬。 例如Pry.config.input = STDIN Pry.config.output = STDOUT
绑定.撬

(下面的完整堆栈跟踪)

如果我根据指令复制这些命令并再次重新运行代码,乍一看似乎工作正常,但 pry 命令的执行会中断。但是,如果我在控制台中输入任何内容,则会出现另一个错误

(pry) output error: #<NameError: uninitialized constant Pry::Output::Java>

我什至无法用谷歌搜索这个错误的任何类似案例,这让它变得更加奇怪。我没有为这台计算机设置 Ruby 环境,所以我觉得 Ruby 生态系统的某些部分可能会丢失或损坏。我该如何解决

完整的错误堆栈:

C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/output.rb:119:in `rescue in readline_size'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/output.rb:114:in `readline_size'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/output.rb:87:in `actual_screen_size'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/output.rb:62:in `size'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/output.rb:75:in `height'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pager.rb:91:in `height'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pager.rb:163:in `initialize'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pager.rb:62:in `new'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pager.rb:62:in `best_available'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pager.rb:34:in `open'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/color_printer.rb:12:in `default'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_instance.rb:302:in `call'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_instance.rb:302:in `show_result'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_instance.rb:672:in `block in handle_line'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_class.rb:382:in `critical_section'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_instance.rb:671:in `handle_line'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_instance.rb:261:in `block (2 levels) in eval'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_instance.rb:260:in `catch'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_instance.rb:260:in `block in eval'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_instance.rb:259:in `catch'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_instance.rb:259:in `eval'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/repl.rb:77:in `block in repl'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/repl.rb:67:in `loop'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/repl.rb:67:in `repl'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/repl.rb:38:in `block in start'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/input_lock.rb:61:in `__with_ownership'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/input_lock.rb:78:in `with_ownership'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/repl.rb:38:in `start'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/repl.rb:15:in `start'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-0.13.1/lib/pry/pry_class.rb:191:in `start'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-byebug-3.9.0/lib/byebug/processors/pry_processor.rb:117:in `block in resume_pry'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-byebug-3.9.0/lib/byebug/processors/pry_processor.rb:30:in `block (2 levels) in run'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/byebug-11.1.3/lib/byebug/helpers/eval.rb:94:in `allowing_other_threads'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-byebug-3.9.0/lib/byebug/processors/pry_processor.rb:30:in `block in run'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-byebug-3.9.0/lib/byebug/processors/pry_processor.rb:29:in `catch'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-byebug-3.9.0/lib/byebug/processors/pry_processor.rb:29:in `run'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-byebug-3.9.0/lib/byebug/processors/pry_processor.rb:113:in `resume_pry'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/pry-byebug-3.9.0/lib/byebug/processors/pry_processor.rb:65:in `at_line'
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/byebug-11.1.3/lib/byebug/context.rb:98:in `at_line'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。