ruby – 如何在gem的示例脚本中使用pry-byebug?

ruby – 如何在gem的示例脚本中使用pry-byebug?,第1张

概述我正在努力制作我的第一个宝石,它不是一个Rails应用程序,是一个带有一些AI的井字游戏库,所以我可以扮演一个永远不会失去的计算机对手并在可能的情况下强制取胜. 现在我正在尝试在AI中调试攻击策略,但我似乎无法弄清楚如何在我的测试脚本中使用pry-byebug工作,特别是调试命令如step,next等工作点击binding.pry. 名为smart-tac-toe的gem具有以下目录结构: $ls 我正在努力制作我的第一个宝石,它不是一个Rails应用程序,是一个带有一些AI的井字游戏库,所以我可以扮演一个永远不会失去的计算机对手并在可能的情况下强制取胜.

现在我正在尝试在AI中调试攻击策略,但我似乎无法弄清楚如何在我的测试脚本中使用pry-byeBUG工作,特别是调试命令如step,next等工作点击binding.pry.

名为smart-tac-toe的gem具有以下目录结构:

$ls smart-tac-toeexample  Gemfile  Gemfile.lock  Guardfile  lib  liCENSE.txt  Rakefile  README.md  smart_tac_toe.gemspec  spec  tmp

正如您在上面看到的,我的gem中有一个’example’目录,其中包含“example.rb”,其中我使用了我所创建的类.

但是,当我使用binding.pry并尝试使用step和next时,Pry会话就会退出并且脚本会继续运行.

在我的smart_tac_toe.gemspec文件中,我显然有pry-byeBUG:

spec.add_development_dependency "pry-byeBUG",'~>2.0.0'

在我的example.rb文件的顶部,我试过要求正确的宝石:

require 'pry'require 'pry-byeBUG'require "../lib/smart_tac_toe.rb"

我使用的是Ruby 2.1.1p76,这个gem的repo位于https://github.com/discotroll65/smart_tac_toe

另外,虽然将binding.pry放入我的示例脚本确实会让我进入调试会话,但最初它处于读取模式,我必须先按q才能退出,然后才能开始执行repl *** 作.有什么想法可能是这样吗?

解决方法 好的,我更多地意识到这一点(我认为……对游戏来说仍然是一种新的东西)一些事情 –

1.)如果你想要的话

require 'pry'

在你的ruby文件的顶部,并让它一般工作,它将有助于使用您的终端在您的开发环境中安装它:

user@machine/currentdirectory/$gem install pry

同样用pry-byeBUG:

user@machine/currentdirectory/$gem install pry-byeBUG

2.)我最初的问题的真正答案是使用

byeBUG

在我的脚本中作为调试钩子,而不是

binding.pry

(感谢@mtm的建议!)

虽然我确实使用了byeBUG,但是当步骤和下一步正常工作时,它引发我的REPL没有任何颜色,而且一般不太好……无论如何要解决这个问题?

总结

以上是内存溢出为你收集整理的ruby – 如何在gem的示例脚本中使用pry-byebug?全部内容,希望文章能够帮你解决ruby – 如何在gem的示例脚本中使用pry-byebug?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1286761.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-09
下一篇2022-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存