我想使用Thor在Ruby中创建一个命令行工具。此工具应打包为gem,以便轻松安装和卸载。
创建和发布gem,我已经完成了。我还创建了几个也可以工作的Thor脚本。但是,我不知道如何将它们结合起来。
我的目标是能够通过以下方式调用我的工具: mytool任务参数 - 选项 mytool taskgroup:task param --options
我知道如何让一个Thor脚本可执行。但是,如何使一堆Thor脚本可以访问抛出一个命令?
答案 0 :(得分:1)
根据relevant Gem documentation,您可以指定(在.gemspec中):
spec.executables = ['bin/foo', 'bin/bar']
spec.default_executable = 'bin/bar'
让宝石安装一堆可执行文件(foo
和bar
)。或者您为所有Thor脚本编写了一个包装器并指定:
spec.executables = ['bin/wrapper']
让你的gem只安装一个可执行文件(wrapper
)。
答案 1 :(得分:0)
电传打字机宝石(https://github.com/piotrmurach/tty)在为此设置所有脚手架方面做得非常出色。使用电传打字创建项目,然后仅填写实施。