我是Thor(和Ruby)的新手,我正在考虑在构建脚本中使用它,因为它表示它可以替代Rake(因此可以替换为Rake )。但是经过短暂的试用后,我对它返回的错误状态感到困惑。我很快浏览了wiki,但没有看到任何提及。如果发生错误,Ruby/Thor退出状态
只需第一 “简单实施例”,test.thor
:
class Test < Thor
desc "example", "an example task"
def example
puts "I'm a thor task!"
end
end
版本#:
eruve>thor version
Thor 0.18.1
我试图故意下面,一个错误的命令:
eruve>ruby --version; thor test:example badarg; echo exit status: $?
ruby 2.0.0p195 (2013-05-14 revision 40734) [x86_64-darwin10.8.0]
ERROR: thor example was called with arguments ["badarg"]
Usage: "thor test:example".
exit status: 0
所以,出现了一个错误,但它以0的状态退出......意味着我宁愿不用它在(n on-ruby)脚本,否则脚本会继续运行,即使应该终止。随后的错误可能难以分析。
我必须失去了一些东西,所以我的问题:
有一种简单的方法来获得在发生错误的情况下默认为非零状态(配置文件等)?
如果不是,我应该怎么做才能正确吗?
谢谢。
+1因为它导致了黑客(请参阅我的答案),尽管这不是直接可用的,特别是作为Ruby之外的解决方案。 – eruve