从ruby gem看到输出的好方法是什么?

时间:2016-12-17 06:10:40

标签: ruby debugging rubygems development-environment

我想知道在我的ruby gem中运行代码的好方法(而不仅仅是通过测试)。

这意味着我想在终端上运行ruby lib/{gemname}.rb并能够看到一些输出

所以我在我的基本文件中有这一行:

$LOAD_PATH.unshift File.expand_path("../../lib", __FILE__)

然后我通过在基本文件的底部要求它来加载名为debugger.rb的文件。然后这个文件给了我需要的输出。

这样可行,但这种混乱使我的代码混乱,我不想意外地提交它并观察它在生产中断。

那么这样做的好方法是什么?

1 个答案:

答案 0 :(得分:1)

我开发和调试gem的方法有两个部分:

1)始终使用require_relative来包含所需的"内部"宝石相关文件。这允许gem作为gem安装时正常加载,也可以在我的开发环境中加载(忽略可能已经安装的任何gem版本。)

2)然后在主文件底部使用以下代码片段(通常),以便在命令行上显式运行基本my_gem.rb文件时激活调试功能。

if __FILE__ == $0
  #debugging code goes here!
end

通过这种策略,在发布gem之前无需担心调试代码。